SQL LEFT JOIN キーワード

❮ 前章へ 次章へ ❯

SQL LEFT JOIN キーワード

LEFT JOIN キーワードは、右テーブル(table2)に一致した行を付加した、左テーブル(table1)全行を返します。 一致するものがなければ、結果の右側は NULL になります。

SQL LEFT JOIN 構文

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name=table2.column_name;

または:

SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name=table2.column_name;

PS! In some databases LEFT JOIN is called LEFT OUTER JOIN.

SQL LEFT JOIN


デモ・データベース

このチュートリアルでは、よく知られた Northwind サンプルデータベースを使用します。

下は、"Customers" テーブルから抜粋したものです:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

および "Orders" テーブルからの抜粋です:

OrderID CustomerID EmployeeID OrderDate ShipperID
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 文は、customers 全行と、一致するものがあればその orders を返します:

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Try it Yourself ❯

注: LEFT JOIN キーワードは、右のテーブル(Orders)に一致するものがない場合でも、 左側のテーブル(Customers)からすべての行を返します。


❮ 前章へ 次章へ ❯