Maison >base de données >tutoriel mysql >Comment puis-je récupérer efficacement des données de plusieurs tables à l'aide de jointures et d'unions SQL ?
Jointures et unions
Exemples
Inner Join : Récupérer les données des tables "voitures" et "modèles" :
SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID
Union: Combinez les résultats de deux requêtes pour obtenez toutes les voitures de sport et 4x4 :
SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID WHERE m.ID = 1 UNION SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID WHERE m.ID = 3
Jointure extérieure gauche : Trouvez toutes les marques et leur nombre de voitures, y compris les marques sans aucune voiture :
SELECT b.brand, COUNT(c.id) AS countOfBrand FROM brands b LEFT OUTER JOIN cars c ON b.ID = c.brand GROUP BY b.brand
Intersects : Récupère uniquement les lignes identiques à travers les "couleurs" et les "modèles" tableaux :
SELECT m.model, c.color FROM models m INNER JOIN colors c ON m.ID = c.ID WHERE m.model = 'Sports' AND c.color = 'Red'
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!