JOIN:結合する両方のテーブルにONで指定した条件にマッチする値またはレコードのみ返します。table2.column_name;例:customersテーブルとordersテーブルからcustomer_idが一致するレコードを取得。JOIN左側のテーブルの全レコードと右側のテーブルからONで指定した条件にマッチするレコードのみ返します。table2.column_name;例:左側customersテーブルの全レコードと右側ordersテーブルから関連するカラムcustomer_idが一致するレコードのみを組み合わせて取得。JOIN左側のテーブルからONで指定した条件にマッチするレコードのみと右側のテーブルの全レコード返します。table2.column_name;例:左側customersテーブルから関連するカラムcustomer_idが一致するレコードのみと右側ordersテーブルの全レコードとを組み合わせて取得。JOINJOINするテーブル両方から条件に一致するレコードのみ返します。WHERE条件を付けていない場合は例のように両方のテーブルから関連しているレコードの組み合わせが抽出されます。’条件’;例:WHERE条件なしでcustomersテーブルとordersテーブルから全レコードを取得。サポートされていません。JOINを合わせてデータを取得する必要があります。重複しているレコードも取得されてしまうので注意が必要です。WHERE条件を付けていないため以下のように関連するレコードの組み合わせが抽出されます。JOINJOINする2つのテーブルから各行を全て返します。関連していない2つのテーブル1つのテーブルにまとめてデータ抽出したい時は便利です。JOINは左右のテーブルから片方だけにレコードが存在することに限らず全てのレコードを返すのでデータの量が多すぎてパフォーマンスに影響してしまうケースがあります。table2;例:customersテーブルとordersテーブルからレコード各行を全て取得。JOIN同一のテーブルをJOINして条件にマッチするレコードのみ返します。’条件’;例:customersテーブルから同じcityでcustomer_nameが違うレコードのみ取得。T2.city;まとめ「JOIN」は2つ以上のテーブルを結合して1つのテーブルとしてデータを抽出できます。「IN」は複数の「OR」演算子と同様にWHERE句の条件に複数の値を指定してマッチする全レコードを抽出できます。「EXISTS」はサブクエリで別のテーブルに条件にマッチするレコードの存在有無のチェック結果を基に必要なデータを抽出できます。文の作成に役に立つと思います。ウェブサービス株式会社(DWS)公式ブログ記事URLをコピーしました。