我不清楚下面提到的查询之间的工作差异。
具体来说,我不清楚
OPTION(LOOP JOIN)
.
第一种方法:这是使用的传统连接,比以下所有方法都昂贵。
SELECT *
FROM [Item Detail] a
LEFT JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (FORCE ORDER);
第二种方法:它包含OPTION
在带有排序数据的语句中,只是优化。
SELECT *
FROM [Item Detail] a
LEFT LOOP JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (FORCE ORDER);
第三种方法:在这里,我不清楚查询如何工作并包含OPTION
!! loop join
?
SELECT *
FROM [Item Detail] a
LEFT LOOP JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (LOOP JOIN);
任何人都可以解释彼此之间的区别和工作方式以及优势吗?
注意:这些不是嵌套的 OR 哈希循环!