INTERSECT演算子は、問い合わせ結果Aと問い合わせ結果Bの両方で選択された行を返す集合演算子です。
もし、問い合わせ結果が複数ある場合は、その複数の問い合わせ結果の全てで選択された行を返します。
この時、重複した行が存在する場合は省かれます。
また、最後に1列目の値で昇順でソートされます。order by句を指定した場合は、order by句でソートされます。
次のSQLを見てください。
select id
from employee
where id <= 8;
INTERSECT
次に、SQLの検索結果が下図のようになったとします。
select id
from employee
where id between 7 and 8;
INTERSECT
この二つのSQLをINTERSECT演算子でくっつけると結果は以下のようになります。
select id
from employee
where id <= 8
intersect
select id
from employee
where id between 7 and 8;
INTERSECT
集合演算子は上のSQLから評価されますが、INTERSECT演算子の場合、SQLの順序を変えても検索結果は変わりません。