如何使用非聚集索引?

时间:2018-08-30 12:43:29

标签: sql-server non-clustered-index

我对非聚集索引的工作存在一般性疑问,假设我的表上有4个非聚集索引,并且我想知道哪个非聚集索引正在从这4个索引中调用,并且有使用特定索引的方法从这四个索引。

2 个答案:

答案 0 :(得分:0)

您可以通过以下提示强制SELECT查询使用特定索引:

SELECT <columns> FROM Table_Name WITH(INDEX(Index_Name))

对表“ Tab_test”说,已定义了四个非聚集索引,例如Idx_1,Idx_2,Idx_3和Idx_4。现在,您要SELECT查询使用Idx_3,那么下面的查询将强制SELECT语句使用Idx_3:

SELECT <columns> FROM Tab_test WITH(INDEX(Idx_3))

答案 1 :(得分:0)

在运行查询之前,请单击cntr-M,或从SQL Server Management Studio的“查询”菜单中选择“包括实际执行计划”。查询完成后,单击结果窗口的“执行计划”选项卡。滚动浏览,直到找到计划从相关表中读取的位置,并且它将告诉您使用了哪个索引。