Jointure intérieure vs. Jointure extérieure

Jointure intérieure vs. Jointure extérieure


En SQL, un rejoindre est utilisé pour comparer et combiner - rejoindre littéralement - et renvoyer des lignes de données spécifiques de deux tables ou plus dans une base de données. Un jointure interne trouve et renvoie des données correspondantes à partir de tables, tandis qu'un jointure extérieure trouve et renvoie des données correspondantes et Quelques données différentes des tables.

Jointure interne

Une jointure intérieure se concentre sur le point commun entre deux tables. Lorsque vous utilisez une jointure intérieure, il doit y avoir au moins certaines données correspondantes entre deux (ou plus) tables comparées. Une jointure intérieure recherche des tableaux pour les données correspondantes ou chevauchant. En le trouvant, la jointure intérieure combine et renvoie les informations dans une nouvelle table.

Exemple de jointure intérieure

Prenons un scénario commun de deux tables: prix et quantités des produits. Les informations communes dans les deux tables sont le nom du produit, c'est donc la colonne logique pour rejoindre les tables sur. Certains produits sont communs dans les deux tableaux; D'autres sont uniques à l'une des tables et n'ont pas de match dans l'autre tableau.

Une jointure intérieure Des produits Renvoie des informations sur uniquement les produits courants dans les deux tables.

Jointure extérieure

Une jointure extérieure renvoie un ensemble d'enregistrements (ou de lignes) qui incluent ce qu'une jointure intérieure reviendrait mais comprend également d'autres lignes pour lesquelles aucune correspondance correspondante n'est trouvée dans l'autre tableau.

Il existe trois types de jointures extérieures:

  • Jointure extérieure gauche (ou jointure gauche)
  • Join extérieur droit (ou jointure à droite)
  • Jointure extérieure complète (ou jointure complète)

Chacune de ces jointures externes fait référence à la partie des données comparées, combinées et retournées. Parfois, Nulls sera produit dans ce processus car certaines données sont partagées alors que d'autres données ne sont pas.

Jointure externe gauche

Une jointure extérieure gauche renverra toutes les données du tableau 1 et toutes les données partagées (donc, la partie intérieure de l'exemple du diagramme de Venn), mais uniquement les données correspondantes du tableau 2, qui est la bonne jointure.

Exemple de jointure de gauche

Dans notre base de données d'exemples, il existe deux produits - oranges et tomates - sur la «gauche» (Des prix Tableau) qui n'ont pas d'entrée correspondante sur la «droite» (tableau des quantités). Dans une jointure de gauche, ces lignes sont incluses dans l'ensemble de résultats avec un null dans la colonne de quantité. Les autres lignes dans le résultat sont les mêmes que la jointure intérieure.

Join extérieure droite

Une jointure extérieure droite renvoie les données du tableau 2 et toutes les données partagées, mais uniquement les données correspondantes du tableau 1, qui est la jointure de gauche.

Exemple de jointure à droite

Semblable à l'exemple de jointure de gauche, la sortie d'une jointure extérieure droite comprend toutes les lignes de la jointure intérieure et deux lignes - brocoli et courge - à partir de la «droite» (Quantités Tableau) qui n'ont pas d'entrées assorties à gauche.

Jointure extérieure complète

Une jointure extérieure complète, ou jointure complète, qui est pas Prend en charge par le système de gestion de la base de données MySQL populaire, combine et retourne tous Données de deux tables ou plus, qu'il existe des informations partagées. Considérez une jointure complète comme duplication simplement de toutes les informations spécifiées, mais dans une seule table, plutôt que plusieurs tables. Là où les données correspondantes sont manquantes, Nulls sera produit.

Ce ne sont que les bases, mais beaucoup de choses peuvent être faites avec des jointures. Il y a même des jointures qui peuvent exclure d'autres jointures!

Vidéo expliquant les joints intérieurs vs externes

Cette vidéo explique la différence entre les différents types de jointures. Il est retenu pour commencer au point où la discussion sur les jointures commence.