我在DB中有两个现有索引,如下所示
创建NONCLUSTERED INDEX IndexTable1 在表(fkAnothertable)
创建非集群索引IndexTable2 在桌子上(fkAnothertable) 包括(pkTable)
我有预感,我的研究似乎指出,任何调用#1的查询都会被#2满足,#1就会浪费。我找不到确定的答案。
这个假设是否正确,我可以放弃#1并可能提高性能吗?
答案 0 :(得分:2)
是。 #2完全覆盖#1,事实上反之亦然。 pkTable
是您的聚集索引键吗?如果是这样,它将包含在#1中(在密钥级别,因为非聚集索引未声明为唯一)。
如果pkTable
不是群集密钥,则#1
仍然会满足#2
上的查询,但#2
可能会占用更多页面,从而进行扫描#1
效率低一点。