ホームページ >データベース >mysql チュートリアル >MySQL で複数のテーブルを結合して関連データを取得する方法

MySQL で複数のテーブルを結合して関連データを取得する方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-17 10:09:25855ブラウズ

How to Join Multiple Tables in MySQL to Retrieve Related Data?

MySQL でのテーブルの結合

MySQL では、テーブルを結合することで、共有カラムに基づいて複数のテーブルのデータを結合できます。この質問では、3 つのテーブルを結合して特定の情報を取得することを目的としています。

Student、Course、および Bridge テーブルの結合

指定されたデータには、次の 3 つのテーブルが含まれています: Student (学生名を保持する)、Course (コース名を含む)、および Bridge (学生 ID をコース ID に結び付ける)。目的の結果 (学生名と学習したコース名のリスト) を取得するには、ANSI 構文を使用した内部結合を使用する必要があります。

SELECT s.name AS Student, c.name AS Course
FROM student s
INNER JOIN bridge b ON s.id = b.sid
INNER JOIN course c ON b.cid = c.id
ORDER BY s.name;

このクエリは、各学生の名前とそのコースを示す、期待どおりの結果を生成します。

従業員の入社と管理テーブル

質問の 2 番目の部分には、Employee (従業員名を保持) と Manage (マネージャー ID を従業員 ID に結び付ける) の 2 つのテーブルがあります。目的の結果 (マネージャとそのスタッフのリスト) を取得するには、再度内部結合を使用する必要があります。

SELECT e1.name AS Manager, e2.name AS Staff
FROM employee e1
INNER JOIN manage m ON e1.id = m.mid
INNER JOIN employee e2 ON m.eid = e2.id;

このクエリは、各マネージャの名前とそのスタッフ メンバーの名前を示す、期待される結果を提供します。

以上がMySQL で複数のテーブルを結合して関連データを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。