部門番号500と600のすべての従業員の部門番号と名前を知るには、UNION演算子を次のように使用します。
SELECT DeptNo, Name FROM Employee WHERE DeptNo = 500 UNION SELECT DeptNo, Name FROM Employee WHERE DeptNo = 600 ;
この問合わせは、次の行を戻します。
| DeptNo | Name |
|---|---|
| 500 | Carter J |
| 500 | Inglis C |
| 500 | Marston A |
| 500 | Omura H |
| 500 | Reed C |
| 500 | Smith T |
| 500 | Watson L |
| 600 | Aguilar J |
| 600 | Kemper R |
| 600 | Newman P |
| 600 | Regan R |
この同じ結果は、次のような単純な問合わせでも生成できますが、
SELECT Name, DeptNo FROM Employee WHERE (DeptNo = 500) OR (DeptNo = 600);
UNION演算子を使用して問合わせを定式化することの利点として、DeptNo列がEmployeeテーブルのプライマリ インデックスである場合、UNION演算子を使用することによって基本選択がプライマリ キー操作になることが保証される、という点があります。OR演算を使用する問合わせがプライマリ インデックスを使用する保証はありません。