Maison > base de données > tutoriel mysql > Les JOIN MySQL peuvent-elles fonctionner sans clause ON ?

Les JOIN MySQL peuvent-elles fonctionner sans clause ON ?

Linda Hamilton
Libérer: 2024-12-15 11:08:14
original
634 Les gens l'ont consulté

Can MySQL JOINs Work Without an ON Clause?

MySQL JOIN sans condition ON : comprendre les jointures croisées et internes

Alors que la plupart des systèmes de bases de données nécessitent une clause ON pour les opérations JOIN, MySQL propose une fonctionnalité unique qui permet son omission dans certains scénarios. Les jointures et les jointures internes dans MySQL peuvent s'exécuter sans condition ON, ce qui entraîne une jointure croisée.

Jointure croisée : un produit cartésien

Une jointure croisée, en l'absence de la clause ON, génère un produit cartésien de données provenant de plusieurs tables. Cela signifie que chaque ligne de la première table est associée à chaque ligne de la deuxième table, créant ainsi un ensemble de résultats nettement plus grand.

Jointure interne sans clause ON

De même, lors de l'utilisation d'une jointure interne sans clause ON, MySQL se comporte différemment de la norme ANSI. Le résultat est le même qu'une jointure croisée, supprimant efficacement tout critère de filtrage ou de correspondance.

Cas d'utilisation

Les jointures croisées peuvent être utiles dans des situations spécifiques :

  • Lorsque vous souhaitez créer une liste complète de toutes les combinaisons possibles de lignes de plusieurs tables.
  • Lorsque vous utilisez un schéma de base de données qui ne contient pas de clés étrangères ou d'autres relations entre les tables.

Pratique recommandée

Bien que MySQL autorise les requêtes de jointure sans condition ON, il est Il est généralement recommandé d'utiliser explicitement la jointure croisée comme suit :

SELECT * FROM table1 CROSS JOIN table2
Copier après la connexion

Cette approche est plus explicite et évite toute confusion avec la jointure interne. jointures.

Jointure droite et jointure gauche

Les jointures externes droite et gauche nécessitent une clause ON pour spécifier la condition de correspondance. Par conséquent, la discussion concernant les jointures sans condition ON ne s'applique pas à ces types de jointures.

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