MySQL : types et différences de jointures démystifiés
Les utilisateurs travaillant avec MySQL rencontrent souvent différents types de jointures, et naviguer dans leurs distinctions peut être difficile . Cet article fournit une présentation rapide des différents types de jointures, clarifiant leurs caractéristiques et leur objectif.
Jointures séparées par des virgules
L'énigmatique « jointure séparée par des virgules » est essentiellement une syntaxe obsolète qui est antérieure aux normes SQL modernes. Cela implique essentiellement un JOIN sans spécifier le type de jointure. Par exemple, la requête que vous avez fournie :
SELECT * FROM a, b WHERE b.id = a.beeId AND ...
est effectivement équivalente à :
SELECT * FROM a JOIN b ON b.id = a.beeId WHERE ...
Cette jointure renvoie des lignes uniquement lorsqu'il y a une correspondance dans les deux tables.
Jointures externes gauches
Jointures externes gauches, désignées par "LEFT OUTER JOIN", récupère toutes les lignes du tableau de gauche, qu'il existe ou non une correspondance dans le tableau de droite. Cela permet d'inclure des lignes sans correspondance de la table de gauche tout en remplissant éventuellement les colonnes de la table de droite avec des valeurs NULL.
SELECT * FROM a LEFT OUTER JOIN b ON b.id = a.beeId WHERE ...
Autres types de jointure
En plus de la virgule -jointures externes séparées et gauches, il existe plusieurs autres jointures types :
Le rôle de "LEFT"
Le "LEFT" dans les jointures externes gauches indique que la table de gauche est prioritaire dans le résultat renvoyé. Les lignes sans correspondance du tableau de gauche sont incluses, tandis que les lignes sans correspondance du tableau de droite sont omises. À l'inverse, dans les jointures externes droites, la table de droite est prioritaire.
Comprendre les différents types de jointures et leurs nuances permet aux développeurs de récupérer et de combiner efficacement les données dans les requêtes MySQL, répondant ainsi à un large éventail de scénarios de manipulation de données. .
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!