简单的选择需要很多时间来执行
问题描述:
我有一个复杂的选择JOIN和UNION,它需要很长的时间,所以我决定测试它在一个简单的选择,但是这个选择仍然需要时间来执行。我已保存的执行计划here简单的选择需要很多时间来执行
的代码仅为
SELECT pchrgqty,pchrgup,pcchrgamt FROM
hdocord
WHERE acctno = '2014-000136557'
但它需要1分11秒执行
如何使这个更快? 为什么它很慢?
答
你可以尝试添加只是运行该SQL语句缺乏指数:
CREATE NONCLUSTERED INDEX ix_hdocord_acctno ON hdocord
(
acctno ASC
)
ON [PRIMARY]
,如果他们没有给你足够的权限,它就会失败。
它正在扫描整个表格。在'acctno'上创建一个索引,以便寻找。 (另外,考虑通知此表的设计者,SQL Server最多支持128个字符的名称,因此没有理由不可读取这些名称,除非您必须与某种旧式系统兼容。) –
@JeroenMostert i无法访问数据库。我想问如何为'acctno'添加索引?所以我可以尝试添加它。你可以提供它作为答案 – Martin