我在SQL Server上有一个非常简单的选择:

select * from person
where first_name = 'John' and last_name = 'Smith'`

在执行计划中,我有:

  • 非聚集索引搜寻-NC_First_Last_pers
  • 在PK上进行键查找(集群)

这两个进入嵌套循环联接。

我的问题是:

为什么要加入? 我以为这仅用于连接不同的表,但是我这里只有1个表。

谢谢!

===============>>#1 票数:4 已采纳

在索引中,您具有索引中包含的列的数据以及聚簇键。 您正在查询带有*的表,这意味着您必须查找所有列值,并且这些值与聚簇键一起存储。

该查询使用名称上的索引查找匹配的所有行,然后使用聚簇键查找所需的数据。

  ask by Anvar translate from so

未解决问题?本站智能推荐: