Requêtes MySQL JOIN sans conditions ON
Dans MySQL, les requêtes JOIN ne nécessitent pas strictement une condition ON. Cela diffère de la norme ANSI et de nombreuses autres bases de données.
Jointure croisée
Sans condition ON, un JOIN est interprété comme une jointure croisée. Cette opération produit un produit cartésien, résultant en un ensemble d'enregistrements contenant toutes les combinaisons possibles de lignes des tables jointes. Par exemple, une jointure croisée entre deux tables de 3 et 4 lignes respectivement générerait 12 lignes.
Utiliser explicitement la jointure croisée
Il est recommandé d'utiliser CROSS JOIN mot-clé lors de l'exécution explicite d'une jointure croisée pour plus de clarté :
SELECT * FROM A CROSS JOIN B;
INNER JOIN vs. Cross Join
L'absence de condition ON dans une requête JOIN la rend effectivement équivalente à un INNER JOIN sans conditions. Cela peut être utile pour trouver toutes les lignes correspondantes entre les tables, semblable à une INNER JOIN.
Jointures externes gauche et droite
Pour les JOINURES EXTERNES GAUCHE et DROITE, le ON La condition est obligatoire, car ces types de jointures nécessitent une condition spécifiée pour la correspondance des lignes. Par conséquent, l'absence de condition ON n'est pas pertinente pour eux.
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!