SQLは、2つ以上の表からの行を結合するために使用されて参加します。
SQL JOINは
SQL JOIN句は、それらの間に共通のフィールドに基づいて、複数のテーブルからの行を結合するために使用されます。
参加の最も一般的なタイプは、次のとおりです。SQL INNER JOINは(単純結合します)。 SQL INNERは、結合条件が満たされた複数のテーブルからすべての行を返しますJOIN。
それでは、から選択を見てみましょう"Orders"テーブル:
受注 | 顧客ID | 注文日 |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
その後、から選択を見て"Customers"テーブル:
顧客ID | 顧客名 | 連絡先 | 国 |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mexico |
ていることに注意してください"CustomerID"の列"Orders"テーブルが参照する"CustomerID"に"Customers"テーブル。 上記の2つのテーブル間の関係は"CustomerID"欄。
我々は次のSQL文を実行する場合次に、(それはINNER JOINが含まれています):
例
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM
Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
»それを自分で試してみてください それはこのようなものが生成されます。
受注 | 顧客名 | 注文日 |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taqueria | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbkop | 8/12/1996 |
別のSQLジョイン
私たちは例を続行する前に、我々は別のSQLの種類が一覧表示されますあなたが使用できるジョイン:
- INNER JOIN :両方のテーブル内の少なくとも1つの一致があるとき、すべての行を返します。
- LEFT JOIN左の表からすべての行を返し、右の表から一致する行
- RIGHT JOIN :左表から右の表からすべての行、およびマッチした行を返します
- FULL JOIN :1つの表の一致がある場合、すべての行を返します