我有表Eli有100万条记录。当我查询以下内容:从表中优化选择计数(*)
Select count(*) from Eli where userId ='my_user'
需要超过10分钟才能显示结果。我搜索了网页并找到了更好的方法来优化http://dbatipster.blogspot.com/2009/08/get-row-counts-fast.html
的查询。
如何利用下面的查询到我上面的查询 -
SELECT OBJECT_NAME(i.id) [Table_Name], i.rowcnt [Row_Count]
FROM sys.sysindexes i WITH (NOLOCK)
WHERE i.indid in (0,1)
ORDER BY i.rowcnt desc
您是否为'userID'创建了一个索引? – WillardSolutions
100万行不是一个大数字,即使没有覆盖索引,它也不应该运行10分钟来执行全表扫描。 Bte,第二选择只能用于没有任何WHERE条件的行计数。 – dnoeth