SQL FULL OUTER JOINキーワード
SQL FULL OUTER JOINキーワード
FULL OUTER JOIN
キーワードは、左(table1)または右(table2)のテーブルレコードが一致する場合、すべてのレコードを返します。
ヒント: FULL OUTER JOIN
とFULL JOIN
は同じです。
FULL OUTER JOIN構文
SELECT <em>column_name(s)</em>
FROM <em>table1</em>
FULL OUTER JOIN <em>table2
</em>ON <em>table1.column_name </em>=<em> table2.column_name
</em> WHERE <em>condition</em>;
注: FULL 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 FULL OUTER JOINの例
次のSQLステートメントは、すべての顧客とすべての注文を選択します。
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
結果セットからの選択は、次のようになります。
顧客名 |
オーダーID |
---|---|
Null | 10309 |
Null | 10310 |
アルフレッド・フードボックス | Null |
アナ・トルヒーヨ サンドイッチとアイスクリーム | 10308 |
アントニオ・モレノ・タケリア | Null |
注:FULL OUTER JOIN
キーワードは、他のテーブルが一致するかどうかに関係なく、両方のテーブルから一致するすべてのレコードを返します。したがって、「Customers」に「Orders」に一致しない行がある場合、または「Orders」に「Customers」に一致しない行がある場合、それらの行もリストされます。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。