Maison >base de données >tutoriel mysql >Comment récupérer les données correspondantes de plusieurs tables SQL à l'aide d'INNER JOIN ?

Comment récupérer les données correspondantes de plusieurs tables SQL à l'aide d'INNER JOIN ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-15 10:36:43451parcourir

How to Retrieve Matching Data from Multiple SQL Tables Using INNER JOIN?

Récupération efficace des données correspondantes sur plusieurs tables SQL avec INNER JOIN

La gestion des bases de données implique fréquemment l'extraction de données associées à partir de plusieurs tables. La clause INNER JOIN fournit une solution puissante, renvoyant uniquement les lignes où des valeurs correspondantes existent dans les colonnes spécifiées dans différentes tables.

Considérons deux tableaux : tbl_facilitators (contenant facilID, facilLname, facilFname) et tbl_facilitatorClasses (avec classID, className, primeFacil, secondFacil). Notre objectif est de récupérer le nom de la classe et les noms (nom et prénom) des animateurs primaires et secondaires.

La requête INNER JOIN suivante accomplit cela :

<code class="language-sql">SELECT 
    tbl_facilitatorClasses.className,
    tbl_facilitators.facilLname AS primaryFLName,
    tbl_facilitators.facilFname AS primaryFFName,
    tbl_facilitators2.facilLname AS secondaryFLName,
    tbl_facilitators2.facilFname AS secondaryFFName
FROM 
    tbl_facilitatorClasses
INNER JOIN 
    tbl_facilitators ON tbl_facilitatorClasses.primeFacil = tbl_facilitators.facilID
INNER JOIN 
    tbl_facilitators AS tbl_facilitators2 ON tbl_facilitatorClasses.secondFacil = tbl_facilitators2.facilID;</code>

Notez l'alias de tbl_facilitators comme tbl_facilitators2 pour éviter les conflits de noms. La requête se joint à trois conditions :

  1. primeFacil dans tbl_facilitatorClasses matchs facilID dans tbl_facilitators.
  2. secondFacil dans tbl_facilitatorClasses matchs facilID dans tbl_facilitators2.
  3. Le className est sélectionné parmi tbl_facilitatorClasses.

Cette approche récupère efficacement les informations requises en joignant les données des deux tables, fournissant ainsi une vue consolidée des détails de la classe et de l'animateur.

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!

Déclaration:
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