UNION、INTERSECT、およびEXCEPT演算子を使用して、複数のクエリ結果セットを1つの結果セットに結合できます。
構文
クエリ
{UNION [すべて] | INTERSECT | 例外}
クエリ パラメーター
UNION: 2つの結果セットの和集合を返します。UNION ALL: 重複行を保持した2つの結果セットの和集合を返します。ALLキーワードは、UNION計算後に重複行が保持されることを示します。INTERSECT: 2つの結果セットの共通部分を返します。EXCEPT: 最初の結果セットには表示されますが、他の結果セットには表示されない行を返します。
計算シーケンス
UNIONとEXCEPT演算子は左連想です。 つまり、計算順序を変更するために括弧 () を使用しない場合、計算は左から右に始まります。たとえば、次のステートメントでは、
UNION演算子はT1とT2の和集合を返します。 次に、EXCEPT演算子は、union演算子によって返された和集合にのみ表示される行を返しますが、T3は返しません。select * from t1 ユニオン select * from t2 を除く select * from t3 注文によってc1;- 同じステートメントで、
INTERSECT演算子はUNIONおよびEXCEPT演算子よりも優先されます。たとえば、次のステートメントでは、
T2とT3の交点を見つけ、次に交点とT1の和集合を見つけます。select * from t1 ユニオン select * from t2 交差 select * from t3 注文によってc1; - 括弧 () を使用して、これらの演算子の計算順序を変更できます。
たとえば、次のステートメントでは、
T1とT2の和集合を見つけ、次に和集合とT3の交点を見つけます。(t1から * を選択 ユニオン select * from t2) 交差 (t3から * を選択) 注文によってc1;