12

以下で説明するクエリの動作の違いについては明確ではありません。

具体的には、の概念については不明ですOPTION(LOOP JOIN)

1 番目のアプローチ:これは従来の結合であり、以下のすべてよりもコストがかかります。

SELECT * 
FROM [Item Detail] a
LEFT JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (FORCE ORDER);

2番目のアプローチ:ソートされたデータを含むステートメントに含まOPTIONれ、単に最適化されています。

SELECT * 
FROM [Item Detail] a
LEFT LOOP JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (FORCE ORDER);

3 番目のアプローチ:ここでは、クエリがどのように機能し、!!? が含まれているかが明確ではありませOPTIONloop join

SELECT * 
FROM [Item Detail] a
LEFT LOOP JOIN [Order Detail] b ON a.[ItemId] = b.[fkItemId] OPTION (LOOP JOIN);

違いや働き方、それぞれの利点を説明できる人はいますか?

注:これらはネストされた OR ハッシュ ループではありません。

4

1 に答える 1