当两个具有主键的表加入时,执行计划是什么?

时间:2014-06-15 10:18:24

标签: sql

我有两个表Subject1和Offering1。 Subject1的PK是SubId,而Offering1的PK是OffId。下面给出的是加入。有人可以让我知道同样的执行计划是什么?它是Merge_Sort还是Nested_Loop?

Select *
From Subject1 S, Offering1 O
Where S.SubID = O.SubID;

1 个答案:

答案 0 :(得分:2)

首先尝试使用更新的连接语法。

Select *
From Subject1 S INNER JOIN Offering1 O
ON S.SubID = O.SubID;

其次,因为你正在做SELECT *我认为查询优化器只是简单地从头到尾读取每个页面,这很可能最终会出现在聚集索引扫描中(如果你有的话)。

如果您在两个表的子ID上都有索引,并且您只从两个表中选择具有某种索引的列,您将获得更好的执行计划,因为它将是一个覆盖查询。