【SQL】『スッキリわかるSQL入門』7章の読書メモ
【結論】
【目次】
はじめに
JOIN文の書き方
2つ以上の表をJOIN
を使って結合する際の書き方は以下です。
SELECT 列名1, 列名2 FROM テーブルA(左) JOIN テーブルB(右) ON テーブルA,Bの結合条件
JOIN文の種類
ONで条件指定した列が、テーブルA、Bの両方に必ず存在するとは限らず、色々なパターンがあります。 これをベン図で表したのが下図です。
図の説明は以下の通りです。
- 赤丸の内側がテーブルAの条件を満たすエリア
- 青丸の内側がテーブルBの条件を満たすエリア
- (1)がテーブルAの条件は満たすが、テーブルBの条件を満たさないエリア
- (2)がテーブルBの条件は満たすが、テーブルAの条件は満たさないエリア
- (3)がテーブルAとBの両方の条件を満たすエリア
- (4)ががテーブルAとBの両方の条件を満たさないエリア
上図から2つのテーブルを結合する際の組み合わせとして、次のような結合条件が考えられます。
- パターン1 → (1)
- パターン2 → (2)
- パターン3 → (3)
- パターン4 → (4)
- パターン5 → (1)と(2)
- パターン6 → (2)と(3)
- パターン7 → (1)と(2)と(3)
この内どのパターンで結合するかによって、下図のように使用するJOIN
を変更します。
※上図はVisual Representation of SQL Joinsの引用です。
参考情報
スッキリわかるSQL入門 ドリル215問付き! - インプレスブックス
Visual Representation of SQL Joins
さいごに
今回の記事は、研修担当に報告した日報に「不足情報」と「おふざけ情報」を追加することで書き上げました😛