優しい夜
集合演算子(UNION ALL, UNION, MINUS, INTERSECT)について
2008-06-01-Sun  CATEGORY: Oracle
UNION ALL 各問合せで選択された行の内、重複を含む全ての行を返します
UNION 各問合せで選択された行の内、重複を除いた全ての行を返します(和集合)
MINUS 最初の問合せで選択された行の内、2番目以降の問合せにも存在する行を除いて返します(差集合)
INTERSECT どの問合せにも存在する行だけを返します(積集合)
※UNION ALL演算子は、重複も含めた全ての行を返しますが、それ以外の集合演算子は、重複を除いた行を返します。

※UNION ALL演算子以外の集合演算子は、重複が取り除かれる過程の為に、ソートされた結果を返します。

【集合演算子を使う場合の注意点】
1) 最初の問合せの列名か列別名が、結果の列名に使用されます
2) SELECT句では、各問合せの列の数と、列のデータ型を同じにします
3) 集合演算子は、副問合せで使用することが可能です
4) 集合演算子は、2つ以上使用することが可能です
5) UNION ALL以外の結果は、重複を除いて返されます
6) UNION ALL以外の結果は、デフォルトでは、1列目の値で昇順にソートされます
7) ORDER BY句は、文の最後でのみ使用可能です(各問合せでの使用は不可)
8) ORDER BY句では、最初の問合せの列名か列別名を使用します

参考図書:
Trackbacks0 Comments0
Comments

Only the blog author may view the comment.
 
Trackbacks
TB*URL
ページトップへ
Copyright © 2009 優しい夜. all rights reserved.