次のクエリについて考えてみます。ここでは、両方のセットを同じでフィルタリングする必要がありますLocation
。フィルタが両方のセットに1回だけ適用される、より効率的でパフォーマンスの高いアプローチはありLocation
ますか、それとも各セットに同じフィルタを個別に適用する必要がありますか?
SELECT *
FROM Orders
WHERE Quantity BETWEEN 1 AND 100
AND Location = 'SE'
EXCEPT
SELECT *
FROM Orders
WHERE Quantity BETWEEN 50 AND 75
AND Location = 'SE';
注:セット操作自体をリファクタリングすることは考えていません。これは単なるダミーの例です。私の質問は、セット操作全体で共通のWHERE句をどのように処理するかについてのみです。