SQL LEFT JOINキーワード
SQL LEFT JOINキーワード
LEFT JOIN
キーワードは、左側のテーブル(table1)からすべてのレコードを返し、右側のテーブル (table2)から一致するレコードを返します。一致がない場合、結果は右側から0レコードになります。
LEFT JOIN構文
SELECT <em>column_name(s)</em>
FROM <em>table1</em>
LEFT JOIN <em>table2
</em>ON <em>table1.column_name </em>=<em> table2.column_name</em>;
注:一部のデータベースでは、LEFT JOINはLEFT OUTER JOINと呼ばれます。
デモデータベース
このチュートリアルでは、よく知られているNorthwindサンプルデータベースを使用します。
以下は、「顧客」テーブルからの選択です。
顧客ID |
顧客名 |
連絡先 |
住所 |
街 |
郵便番号 |
国 |
---|---|---|---|---|---|---|
1 |
アルフレッド・フードボックス | マリア・アンダース | オベレ通り57 | ベルリン | 12209 | ドイツ |
2 | アナ・トルヒーヨ サンドイッチとアイスクリーム | アナ・トルヒーヨ | コンスティトゥシオン通り2222番地 | メキシコDF | 05021 | メキシコ |
3 | アントニオ・モレノ・タケリア | アンソニー・モレノ | マタデロス 2312 | メキシコDF | 05023 | メキシコ |
「注文」テーブルからの選択
オーダーID |
顧客ID |
従業員ID |
注文日 |
荷送人ID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10309 | 37 | 3 | 1996-09-19 | 1 |
10310 | 77 | 8 | 1996-09-20 | 2 |
SQL LEFT JOINの例
次のSQLステートメントは、すべての顧客と、顧客が持っている可能性のある注文を選択します。
例
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
注:LEFT JOIN
キーワードは、右側のテーブル(Orders)に一致するレコードがない場合でも、左側のテーブル(Customers)からすべてのレコードを返します。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。