最善の方法は、クエリ自体を確認することです。彼らは交差する必要がありますか、それと結合することは可能ですか
例えば。INTERSECTはこんな感じ
select columnA
from tableA
INTERSECT
select columnAreference
from tableB
結果には両方のテーブルにあるすべての列が含まれるため、結合がより便利になります
select columnA
from tableA a
inner join tableB b
on b.columnAReference = a.columnA
実行計画を調べると、INTERSECT が左半結合を実行し、内部結合が予想どおり内部結合を実行することがわかります。左半結合は、クエリ オプティマイザーに指示できるものではありませんが、高速です!!!! 左準結合は左テーブルから 1 行のみを返しますが、通常の結合はそれらすべてを返します。この特定のケースでは、より高速になります。
したがって、INTERSECT は、INNER JOIN 構造で排除する必要がある悪いことではありません。場合によっては、パフォーマンスがさらに向上します。ただし、最良の回答を得るには、クエリに関する詳細が必要です:)