Maison > base de données > tutoriel mysql > Comment puis-je joindre efficacement quatre tables SQL à l'aide d'ID pour combiner des données ?

Comment puis-je joindre efficacement quatre tables SQL à l'aide d'ID pour combiner des données ?

DDD
Libérer: 2025-01-14 07:07:42
original
838 Les gens l'ont consulté

How Can I Efficiently Join Four SQL Tables Using IDs to Combine Data?

Rejoignez efficacement plusieurs tables SQL à l'aide d'ID

Joindre plusieurs tables SQL est une opération de base en intégration et analyse de données. Lorsqu'il y a des colonnes avec des valeurs correspondantes dans le tableau, vous pouvez les joindre à l'aide d'ID et récupérer des données à partir de plusieurs sources de données.

Supposons que vous ayez quatre tables : TableA, TableB, TableC et TableD, avec la structure de colonnes suivante :

  • TableA : aID (clé primaire), nameA, dID
  • TableB : bID (clé primaire), nameB, cID, aID
  • TableC : cID (clé primaire), nomC, date
  • TableD : dID (clé primaire), nameD

Vous souhaitez joindre ces tables pour extraire et combiner des données. Vous avez rejoint avec succès TableA, TableB et TableC en utilisant leurs identifiants respectifs :

<code class="language-sql">SELECT TableA.*, TableB.*, TableC.*
FROM (TableB INNER JOIN TableA ON TableB.aID = TableA.aID)
INNER JOIN TableC ON (TableB.cID = TableC.cID)
WHERE DATE(TableC.date) = DATE(NOW())</code>
Copier après la connexion

Cependant, lorsque vous essayez d'ajouter TableD à la connexion, vous obtenez une erreur car "TableD" n'est pas reconnu.

Pour résoudre ce problème, vous devez ajouter une autre connexion pour contenir TableD. La requête correcte doit être :

<code class="language-sql">SELECT TableA.*, TableB.*, TableC.*, TableD.*
FROM TableA
JOIN TableB ON TableB.aID = TableA.aID
JOIN TableC ON TableC.cID = TableB.cID
JOIN TableD ON TableD.dID = TableA.dID
WHERE DATE(TableC.date) = DATE(NOW())</code>
Copier après la connexion

Cette requête effectue une jointure de quatre tables, en commençant par TableA et en joignant d'autres tables dans l'ordre en fonction des ID correspondants. Cela vous permet de récupérer les données des quatre tables et de les combiner en un seul jeu de résultats.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal