【Oracle SQL*Plus】テーブル結合(LEFT OUTER JOIN)【備忘録】
備忘録になります。
以下の2つのテーブルを結合します。
SQL> SELECT * FROM TEST_TABLE;
ID,NAME ,VAL1,VAL2
---,------,----,----
1,NAME-A, 1,A
2,NAME-B, 2,B
3,NAME-C, 3,C
4,NAME-D, 4,D
5,NAME-E, 5,E
SQL> SELECT * FROM TEST_TABLE2;
ID,NAME ,VAL1,VAL2
---,------,----,----
1,NAME-A, 11,AA
2,NAME-B, 12,AB
3,NAME-C, 13,AC
6,NAME-F, 16,AF
7,NAME-G, 17,AG
この2つのテーブルのIDとNAMEを紐づけて結合します。結合条件を満たさない場合、左テーブルのレコードを残す場合「LEFT OUTER JOIN」を使います。結合されない右テーブルの内容はNULLが入ります。
SQL> SELECT * FROM TEST_TABLE A
2 LEFT OUTER JOIN TEST_TABLE2 B
3 ON A.ID = B.ID
4 AND A.NAME = B.NAME;
ID,NAME ,VAL1,VAL2, ID,NAME ,VAL1,VAL2
---,------,----,----,---,------,----,----
1,NAME-A, 1,A , 1,NAME-A, 11,AA
2,NAME-B, 2,B , 2,NAME-B, 12,AB
3,NAME-C, 3,C , 3,NAME-C, 13,AC
4,NAME-D, 4,D , , , ,
5,NAME-E, 5,E , , , ,
関連リンク