即使我有非聚集索引,为什么还有密钥查找?

时间:2013-09-26 05:16:33

标签: sql sql-server sql-server-2008 tsql

即使我在IsGrantorIsGrantee上创建了索引,我也面临着查询计划中显示密钥查找的问题。请参阅随附的屏幕截图和输出列表。

enter image description here

enter image description here

该表大致包含约50万条记录。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您的索引不是覆盖索引,则会发生密钥查找。通过非覆盖意味着它不能提供查询所需的所有列。因此,要完成对群集索引的剩余列密钥查找。

You can try following
  Drop unnecessary columns from select list
  Include columns in your non cluster index to make it covering.

此外,如果减少结果集中的行数,那么一些键查找不会造成太大影响。