17.05 - 例: 従業員の数と名前の判定 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Release Date
2021年1月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-175K-JPN
Language
日本語 (日本)

部門番号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演算を使用する問合わせがプライマリ インデックスを使用する保証はありません。