Maison > base de données > tutoriel mysql > Comment joindre plusieurs tables dans MySQL pour récupérer des données hiérarchiques et relationnelles ?

Comment joindre plusieurs tables dans MySQL pour récupérer des données hiérarchiques et relationnelles ?

Linda Hamilton
Libérer: 2024-12-14 21:01:10
original
264 Les gens l'ont consulté

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

Joindre plusieurs tables dans MySQL

Joindre des tables d'étudiants, de cours et de pont

Pour récupérer les noms des étudiants et les cours qu'ils ont étudiés, nous pouvons joindre trois tables : Étudiant, Cours et Bridge. La table Bridge établit la relation entre les étudiants et les cours via les colonnes sid et cid, respectivement.

En utilisant la syntaxe ANSI pour plus de clarté, la requête correcte pour joindre ces tables et récupérer le résultat souhaité est :

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;
Copier après la connexion

Exemple de résultat :

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

Rejoindre les employés et gérer les tables pour la hiérarchie

Pour récupérer une structure hiérarchique des managers et du personnel, nous pouvons joindre les tables Employee et Manage en utilisant respectivement les colonnes id et eid. Voici la requête pour cela :

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;
Copier après la connexion

Exemple de résultat :

Manager Staff
Ali King
Ali Mak
Mak Sam
Sam Jon

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal