SQLチュートリアル

SQL HOME SQLイントロ SQL構文 SQL Select SQL Select Distinct SQL Where SQL And、Or、Not SQLの順序 SQL Insert Into SQLNull値 SQLアップデート SQL削除 SQL Select Top SQLの最小値と最大値 SQLカウント、平均、合計 SQL Like SQLワイルドカード SQL入力 SQLの間 SQLエイリアス SQL結合 SQL内部結合 SQL左結合 SQL右結合 SQL完全結合 SQL自己結合 SQLユニオン SQL Group By SQLを持っている SQLが存在する SQL Any、All SQL Select Into SQL Insert Into Select SQLケース SQLNull関数 SQLストアドプロシージャ SQLコメント SQL演算子

SQLデータベース

SQL Create DB SQLドロップDB SQLバックアップDB SQLテーブルの作成 SQLドロップテーブル SQL ALTER TABLE SQLの制約 SQLはNullではありません SQL独自 SQL主キー SQL外部キー SQLチェック SQLのデフォルト SQLインデックス SQL自動インクリメント SQLの日付 SQLビュー SQLインジェクション SQLホスティング SQLデータ型

SQLリファレンス

SQLキーワード MySQL関数 SQLServerの機能 MSAccess関数 SQLクイック参照

SQLの

SQLの例 SQLクイズ SQL演習 SQL証明書

SQL FULL OUTERJOINキーワード


SQL FULL OUTERJOINキーワード

FULL OUTER JOIN左(table1)または右(table2)のテーブルレコードに一致する場合、キーワードはすべてのレコードを返します

ヒント: FULL OUTER JOINFULL JOINは同じです。

FULL OUTERJOIN構文

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition;

SQL FULL OUTER JOIN

注: FULL OUTER JOIN非常に大きな結果セットを返す可能性があります。


デモデータベース

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

以下は、「顧客」テーブルからの抜粋です。

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

そして、「注文」テーブルからの選択:

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 FULL OUTERJOINの例

次のSQLステートメントは、すべての顧客とすべての注文を選択します。

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

結果セットからの選択は次のようになります。

CustomerName OrderID
Null 10309
Null 10310
Alfreds Futterkiste Null
Ana Trujillo Emparedados y helados 10308
Antonio Moreno Taquería Null

注:このFULL OUTER JOINキーワードは、他のテーブルが一致するかどうかに関係なく、両方のテーブルから一致するすべてのレコードを返します。したがって、「注文」に一致しない行が「顧客」にある場合、または「顧客」に一致しない行が「注文」にある場合、それらの行もリストされます。