EXCEPT (SQL)
最初に指定したクエリにはあり、2 番目に指定したクエリにはない結果を返します。
構文
query1 EXCEPT query2
説明
EXCEPT は、2 つ以上のクエリを 1 つのクエリにまとめ、最初のクエリの結果セットにはあり、2 番目のクエリの結果セットにはないデータを返します。結果セットは、最初のクエリと 2 番目のクエリの差分と考えることができます。
2 つのクエリ間で EXCEPT を使用するには、それぞれで指定される列の数が一致している必要があります。異なる列数の結果を返すクエリを指定すると、SQLCODE -9 エラーが発生します。列数を一致させるために、1 つのクエリで NULL 列を指定し、もう 1 つのクエリのデータ列と組み合わせることができます。
結果の列のタイプは、最初のクエリで選択された列のタイプによって決まります。タイプ間で比較を行うには、2 番目のクエリの列のタイプを最初のクエリの列のタイプに変換します。
引数
query
query (通常は SELECT 文) は、1 つ以上の SELECT 文を組み合わせることができます。
例
以下の例では、最初のクエリにはあり、2 番目のクエリにはないすべての Name の行を含む結果セットを作成します。ORDER BY 節は結果を処理し、結果セットを Name 別に並べます。
SELECT Name,Address,NULL
FROM Sample.Employee
EXCEPT
SELECT Name,Address,Age
FROM Sample.Person
ORDER BY Name