LEFT JOIN句 【LEFT JOIN clause】 LEFT OUTER JOIN句 / 左外部結合
概要
LEFT JOIN句(LEFT JOIN clause)とは、リレーショナルデータベースを操作するSQL文の一部として指定することができる句の一つで、SELECT文で左外部結合を行い二つのテーブルを連結するもの。結合操作は二つのテーブルの特定のフィールド同士を対応付け、両者の値が一致するレコードを一つに連結して抽出する。外部結合(OUTER JOIN句)は一致する相手がいなかったレコードも合わせて同じテーブルに抽出する操作で、LEFT JOIN句はSQL文の左側に記述されたテーブルのレコードをすべて抽出する。
SELECT文は「SELECT * FROM テーブル1 LEFT JOIN テーブル2 ON テーブル1.フィールド1=テーブル2.フィールド2」のように指定する。この場合、テーブル1のフィールド1とテーブル2のフィールド2の値が一致するレコード同士は連結し、テーブル1の各フィールドの後ろにテーブル2の各フィールドが連結されたレコードを返す。また、テーブル1のレコードのうち、相手方に一致するものが存在しないものも合わせて返す。
RIGHT JOIN句 (RIGHT OUTER JOIN句)
SELECT文で外部結合を指示するOUTER JOIN句の一種で、LEFT JOINとは逆に右外部結合を行うもの。
「SELECT * FROM テーブル1 RIGHT JOIN テーブル2 ON テーブル1.フィールド1=テーブル2.フィールド2」のように指定し、フィールド1とフィールド2が一致するレコードを連結したものと、テーブル2で結合相手が見つからなかった残りのレコードを合わせて抽出する。
FULL JOIN句 (FULL OUTER JOIN句)
SELECT文で外部結合を指示するOUTER JOIN句の一種で、LEFT JOINとRIGHT JOINを合わせて両テーブルのすべてのレコードを抽出する完全外部結合を行うもの。
「SELECT * FROM テーブル1 FULL JOIN テーブル2 ON テーブル1.フィールド1=テーブル2.フィールド2」のように指定し、フィールド1とフィールド2が一致するレコードを連結したものと、テーブル1とテーブル2の両方で結合相手が見つからなかった残りのレコードをすべて抽出する。