ホームページ > データベース > mysql チュートリアル > MySQL で複数のテーブルを結合して階層データとリレーショナル データを取得する方法

MySQL で複数のテーブルを結合して階層データとリレーショナル データを取得する方法

Linda Hamilton
リリース: 2024-12-14 21:01:10
オリジナル
264 人が閲覧しました

How to Join Multiple Tables in MySQL to Retrieve Hierarchical and Relational Data?

MySQL での複数のテーブルの結合

学生テーブル、コーステーブル、およびブリッジテーブルの結合

学生の名前を取得し、彼らが学習したコースに応じて、Student、Course、Bridge の 3 つのテーブルを結合できます。 Bridge テーブルは、列 sid と cid を通じて学生とコース間の関係をそれぞれ確立します。

わかりやすくするために 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;
ログイン後にコピー

例結果:

Student Course
Ahmed Physic
Ahmed Maths
Ahmed Computer
Ahmed Chemistry
Ali Physic
Ali Maths
John Computer
John Chemistry
King Physic
King Maths

階層のための Employee テーブルと Manage テーブルの結合

マネージャとスタッフの階層構造を取得するには、Employee テーブルと Manage テーブルを結合します。それぞれ列 id と eid を使用するテーブル。これに対するクエリは次のとおりです:

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;
ログイン後にコピー

結果の例:

Manager Staff
Ali King
Ali Mak
Mak Sam
Sam Jon

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート