16.20 - UNION演算子と外部結合 - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-162K-JPN
Language
日本語 (日本)

例: 労働時間を調べるためのUnion演算の実行は、外部結合を示しているわけではありません。この操作は、結合条件で一致する結合テーブルのすべての行、および一致しない「左」結合テーブルまたは「右」結合テーブル、あるいは両方のテーブルからの行を返します。さらに、一致しない行はNULLで拡張されます。

ただし、内部結合とUNION演算子を使用して外部結合を実行することができますが、2つの内部結合を合併したものは外部結合ではありません。

2つの内部結合とUNION演算子を使用して外部結合を実行する例を次に示します。2番目の内部結合におけるNULL値の使用法に注意する必要があります。

   SELECT Offering.CourseNo, Offerings.Location, Enrollment.EmpNo
   FROM Offerings, Enrollment
   WHERE Offerings.CourseNo = Enrollment.CourseNo
   UNION
   SELECT Offerings.CourseNo, Offerings.Location, NULL
   FROM Offerings, Enrollment
   WHERE Offerings.CourseNo <> Enrollment.CourseNo;

上記のUNION演算は、上に示した左外部結合の例と同じ次のような結果を戻します。

O.CourseNo O.Location E.EmpNo
C100 El Segundo 235
C100 El Segundo 668
C200 Dayton ?
C400 El Segundo ?