結合(join)- 結合の種別
- (INNER) JOIN: 内積
- LEFT (OUTER) JOIN: 左は、右に一致が無くとも全て含める
- RIGHT (OUTER) JOIN: 右は、左に一致が無くとも全て含める。SQLite3 は未サポート
- FULL OUTER JOIN: いずれかに一致が無くとも全て含める。MySQL や SQLite3 は未サポート
- CROSS JOIN: 条件がなければ直積(全組み合わせ)。FROM 句にテーブルを列挙した際には、これ。PostgreSQL, MySQL 等で ON, USING を伴うと、(INNER) JOIN と等価
- 結合の条件(汎用順)
- ON: WHERE 句と同じ表記で条件を指定する
- USING(column): 両テーブルの同名のカラムどうしの突合を条件とする
- NATURAL: 同名の全てのカラムが同値であることを条件とする
結合のアルゴリズムその他coalesce (co·a·lesce /kòʊəlés/) … 「コウアレス(チェ)」とでも覚えれば良い。 |
|