Comprendre JOIN vs LEFT JOIN dans MySQL
Les opérations JOIN de MySQL nous permettent de combiner les données de plusieurs tables en spécifiant des colonnes communes entre elles. Cependant, il est crucial de comprendre les différences entre les différents types de jointure, en particulier INNER JOIN et LEFT JOIN.
Considérez la requête inter-bases de données suivante :
Erreur d'exécution de requête avec LEFT JOIN
Lorsque vous essayez de convertir tous les INNER JOIN en LEFT JOIN dans la requête, vous pouvez rencontrer une erreur. En effet, par défaut, MySQL utilise INNER JOIN lorsqu'aucun type de jointure explicite n'est spécifié. LEFT JOIN doit être explicitement spécifié à l'aide du mot-clé "LEFT JOIN".
Type de jointure par défaut
Contrairement à la croyance populaire, le type de jointure par défaut dans MySQL n'est pas LEFT JOIN mais INNER JOIN. Les jointures internes renvoient uniquement les lignes qui ont des valeurs correspondantes dans les colonnes de jointure dans toutes les tables impliquées dans la requête.
Représentation visuelle des jointures
Pour mieux comprendre la différence entre INNER JOIN et LEFT JOIN, considérez les représentations visuelles suivantes :
Comme vous pouvez le voir, LEFT JOIN inclut tous lignes du tableau de gauche (Tableau 1) et les associe aux lignes du tableau de droite (Tableau 2) lorsqu'il y a des correspondances. S'il n'y a aucune correspondance, les valeurs NULL sont incluses pour les colonnes manquantes.
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!