*************複数テーブルを扱う*********


1.結合(join)


結合にはいろいろな書き方がある。どれとどれが一緒かをしっかり把握しよう。



<内部結合>

select * from tableA join tableB on tableA.z = tableB.z


1.1 join ⇔ inner join


1.2 join ⇔ ,(カンマ)   例:select * from table.A , tableB on ~


1.3 on tableA.z = tableB.z ⇔  using(z)   結合する両テーブルでカラム名が同じとき


1.4 on tableA.z = tableB.z ⇔ where tableA.z = tableB.z



<外部結合>

select * from tableA left outer join tableB on tableA.z = tableB.z


1.5 left outer join ⇔ left join


 tableA left outer join tableB ⇔ tableB right outer join tableA


※内部結合の1.3と1.4は外部結合でも有効



≪複数テーブルの結合≫

~join・・・on または ~join・・・usingを繰り返すだけ

select * from tableA inner join tableB on using(z) join on tableC using(y) join on tableD using(x)



2.ユニオン(union)


select a from talbeA union select b from tableB union select c from tableC


2.1 重複値は割愛される。重複も表示するにはunion allを使う。