Différence entre Inner Join et Outer Join

image_pdfimage_print

Quelle est la différence entre Inner Join et Outer Join ? – Les deux Inner Join et Outer Join peuvent être utilisées pour combiner des données provenant de deux tables ou plus. Cependant, il y a quelques différences clés! La différence clé entre (Inner Join) et (Outer Join) est la suivante : Inner Join ne renvoie que les tuples correspondants, par contre Outer Join retourne tous les tuples.
 
 

Table de comparaison
Inner JoinOuter Join
DéfinitionInner Join génère uniquement les tuples correspondants.Outer Join affiche tous les tuples des deux tables.
Base de donnéesOuter Join renvoie une base de données comparativement plus grande.La taille potentielle d’une base de données renvoyée par Inner Join est relativement inférieure à Outer Join.
Les typesAucun typeLeft Outer Join, Right Outer Join, et Full Outer Join.
Différence entre GRANT et REVOKEDifférence entre GRANT et REVOKELa principale différence entre GRANT et REVOKE est que GRANT donne un privilège à l’utilisateur alors que REVOKE reprend le privilège accordé à l’utilisateur. SQL…Lire plus
Définition de Inner Join


 

Inner Join renvoie le résultat de l’intersection de A et B

Supposons que vous avez deux tables A et B, chacune contenant une seule colonne a et b respectivement :

Table A                                     Table B

+------+             +------+
|  a   |             |  b   |
+------+             +------+
|  1   |             |  4   |
|  2   |             |  5   |
|  3   |             |  6   |
|  4   |             |  7   |
|  5   |             |  8   |
|  6   |             |  9   |
+------+             +------+

Inner Join renvoie l’intersection des deux tables, c’est-à-dire les deux lignes qu’elles ont en commun.

SQL> SELECT * FROM A INNER JOIN B ON A.a = B.b;

Cela produit le résultat suivante :

+------+------+
|  a   |  b   |
+------+------+
|  4   |  4   |
|  5   |  5   |
|  6   |  6   |
+------+------+

Vous pouvez voir que seuls les tuples qui satisfaisant la condition A.a = B.b. Par conséquent, nous pouvons dire que Inner Join combine uniquement les tuples correspondants de deux tables.

Différence entre Clé primaire et Clé uniqueDifférence entre Clé primaire et Clé uniqueLa clé primaire et la clé unique sont utilisées pour identifier un tuple de manière unique et appliquer l’unicité dans une colonne ou une combinaison…Lire plus

 

Définition de Outer Join


 

Outer Join renvoie les résultats de l’union de A et B

Supposons les mêmes tables A et B, chacune contenant une seule colonne a et b respectivement :

Table A                                     Table B

+------+             +------+
|  a   |             |  b   |
+------+             +------+
|  1   |             |  4   |
|  2   |             |  5   |
|  3   |             |  6   |
|  4   |             |  7   |
|  5   |             |  8   |
|  6   |             |  9   |
+------+             +------+

Contrairement à Inner Join, Outer Join génère tous les n-uplets. Outer Join est de trois types: Left Outer Join, Right Outer Join, et Full Outer Join.

  • Left Outer Join: renvoie les lignes correspondantes dans la table droite et toutes les lignes dans la table gauche
  • Right Outer Join: renvoie les lignes correspondantes dans la table gauche et toutes les lignes de la table  droite
  • Full Outer Join: renvoie toutes les lignes de toutes les tables. Peu importe s’il y a une correspondance ou non

 

Left Outer Join :

Revenons à notre exemple; Left Outer Join donnera toutes les lignes de A, plus toutes les lignes communes dans B.

SQL> SELECT * FROM A LEFT OUTER JOIN B on A.a = B.b;

Cela produit le résultat suivante :

+------+------+
|  a   |  b   |
+------+------+
|  1   | null |
|  2   | null |
|  3   | null |
|  4   |  4   |
|  5   |  5   |
|  6   |  6   |
+------+------+

 
 

Right outer join :

Revenons à notre exemple; Right outer join donnera toutes les lignes dans B, plus toutes les lignes communes dans A.

SQL> SELECT * FROM A RIGHT OUTER JOIN B on A.a = B.b;

Cela produit le résultat suivante :

+------+------+
|  a   |  b   |
+------+------+
|  4   |  4   |
|  5   |  5   |
|  6   |  6   |
| null |  7   |
| null |  8   |
| null |  9   |
+------+------+
Full outer join :

Revenons à notre exemple; Full outer join vous donnera l’union de A et B, c’est-à-dire toutes les lignes de A et toutes les lignes de B. Si quelque chose dans A n’a pas de donnée correspondante en B, alors la partie B est nulle et vice versa.

SQL> SELECT * FROM A FULL OUTER JOIN B on A.a = B.b;

Cela produit le résultat suivante :

+------+------+
|  a   |  b   |
+------+------+
|  1   | null |
|  2   | null |
|  3   | null |
|  4   |  4   |
|  5   |  5   |
|  6   |  6   |
| null |  7   |
| null |  8   |
| null |  9   |
+------+------+
Différence entre HAVING et WHEREDifférence entre HAVING et WHERELes clauses WHERE et HAVING sont principalement utilisées dans des requêtes SQL, elles permettent de limiter une résultat en utilisant un prédicat spécifique. La principale…Lire plus
Différences clés entre Inner Join et Outer Join
  • La différence clé entre Inner Join et Outer Join est la suivante: Inner Join ne compare et ne combine que les tuples correspondants. Tandis que, Outer Join compare et combine tous les tuples des deux tables comparées.
  • La taille de base de données du résultat obtenu à partir de Inner Join est plus petite que Outer Join.
  • Il existe trois types de Outer Join: Il y a Left Outer JoinRight Outer Join, et Full Outer Join. Mais Inner Join n’a pas de tels types.

 

Conclusion:

Les deux jointures sont très utiles. L’utilisation dépend de l’exigence de l’utilisateur.
Questions techniques sur MYSQLQuestions techniques sur MYSQL – Partie 1Nous avons divisé cette collection de questions techniques sur MYSQL sous sept chapitres là, c’est la premiere, puis vous trouverez la deuxième partie, la troisième…Lire plus QCM Oracle - Bases de données et instancesQCM Oracle – Bases de données et instancesVous souhaitez faire évoluer votre carrière vers Architecte ? Ici, nous vous offrons toutes les QCMs avec le corrigé. Diverses entreprises de premier plan offrent…Lire plus

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *