MySQLチュートリアル

MySQLホーム MySQLイントロ MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECT MySQL WHERE MySQL AND、OR、NOT MySQL ORDER BY MySQL INSERT INTO MySQLNULL値 MySQL UPDATE MySQLDELETE MySQL LIMIT MySQLMINおよびMAX MySQL COUNT、AVG、SUM MySQL LIKE MySQLワイルドカード MySQL IN MySQL BETWEEN MySQLエイリアス MySQLが参加します MySQL内部結合 MySQL LEFT JOIN MySQL RIGHT JOIN MySQL CROSS JOIN MySQL自己結合 MySQL UNION MySQL GROUP BY MySQL HAVING MySQLが存在します MySQL ANY、ALL MySQL INSERT SELECT MySQLケース MySQLヌル関数 MySQLコメント MySQL演算子

MySQLデータベース

MySQL Create DB MySQLドロップDB MySQLテーブルの作成 MySQLドロップテーブル MySQL ALTER TABLE MySQLの制約 MySQLはNullではありません MySQLユニーク MySQLプライマリキー MySQL外部キー MySQLチェック MySQLのデフォルト MySQL CreateIndex MySQL自動インクリメント MySQLの日付 MySQLビュー

MySQLリファレンス

MySQLデータ型 MySQL関数

MySQLの

MySQLの例 MySQLクイズ MySQL演習

MySQLが参加します


MySQL結合テーブル

JOIN句は、2つ以上のテーブル間の関連する列に基づいて、それらのテーブルの行を結合するために使用されます

「注文」テーブルからの選択を見てみましょう。

OrderID CustomerID OrderDate
10308 2 1996-09-18
10309 37 1996-09-19
10310 77 1996-09-20

次に、「顧客」テーブルからの選択を見てください。

CustomerID CustomerName ContactName Country
1 Alfreds Futterkiste Maria Anders Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Mexico
3 Antonio Moreno Taquería Antonio Moreno Mexico

「Orders」テーブルの「CustomerID」列が「Customers」テーブルの「CustomerID」を参照していることに注意してください。上記の2つのテーブル間の関係は、「CustomerID」列です。

INNER JOIN次に、両方のテーブルで値が一致するレコードを選択する次のSQLステートメント(を含む)を作成できます。

SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;

そしてそれはこのようなものを生み出すでしょう:

OrderID CustomerName OrderDate
10308 Ana Trujillo Emparedados y helados 9/18/1996
10365 Antonio Moreno Taquería 11/27/1996
10383 Around the Horn 12/16/1996
10355 Around the Horn 11/15/1996
10278 Berglunds snabbköp 8/12/1996

MySQLでサポートされている結合の種類

  • INNER JOIN:両方のテーブルで値が一致するレコードを返します
  • LEFT JOIN:左側のテーブルからすべてのレコードを返し、右側のテーブルから一致したレコードを返します
  • RIGHT JOIN:右側のテーブルからすべてのレコードを返し、左側のテーブルから一致したレコードを返します
  • CROSS JOIN:両方のテーブルからすべてのレコードを返します

MySQL内部結合  MySQL LEFT JOIN  MySQL RIGHT JOIN  MySQL CROSS JOIN


エクササイズで自分をテストする

エクササイズ:

句に欠落している部分を挿入して、2つのテーブルJOIN結合し、両方のテーブルのフィールドを2つのテーブル間の関係として使用します。OrdersCustomersCustomerID

SELECT *
FROM Orders
LEFT JOIN Customers
=
;