关于索引使用的问题:
如果我创建一个非聚集索引,例如
IX_LastName_Age
它是由LastName ASC
and创建的Age ASC
,并且字段上有聚集索引ID
。
现在,如果我运行查询
Select Age from dbo.user where Age > 10
执行计划会使用“IX_LastName_Age”还是会从聚集索引中扫描?
关于索引使用的问题:
如果我创建一个非聚集索引,例如
IX_LastName_Age
它是由LastName ASC
and创建的Age ASC
,并且字段上有聚集索引ID
。
现在,如果我运行查询
Select Age from dbo.user where Age > 10
执行计划会使用“IX_LastName_Age”还是会从聚集索引中扫描?
如果表的列数多于所描述的 3 列,则扫描
IX_LastName_Age
索引会更有效。如果表只是那 3 列,它可能会扫描聚簇索引或IX_LastName_Age
索引,两者本质上是等价的。鉴于这种情况下的信息,在任何情况下都不可能进行搜索。