JOINTURE EXTERNE SQL
Résumé: dans ce tutoriel, vous apprendrez à utiliser la jointure externe SQL, y compris la jointure externe gauche, la jointure externe droite et jointure externe complète.
Si vous voulez en savoir plus sur SQL INNER JOIN, consultez le didacticiel SQL INNER JOIN.
Il existe trois types de jointure externe: jointure externe gauche, droite jointure externe et jointure externe complète. Examinons chaque type de jointure plus en détail.
SQL OUTER JOIN – jointure externe gauche
La jointure externe gauche SQL est également appelée jointure gauche SQL. Supposons que nous voulions joindre deux tables: A et B. La jointure externe gauche SQL renvoie toutes les lignes de la table gauche (A) et toutes les lignes correspondantes trouvées dans la table droite (B). Cela signifie que le résultat de la jointure SQL à gauche contient toujours les lignes de la table de gauche.
Ce qui suit illustre la syntaxe externe gauche de SQL pour joindre 2 tables: table_A et table_B:
1
2
3
4
|
SELECT colonne1, colonne2 …
FROM table_A
LEFT JOIN table_B ON join_condition
WHERE row_condition
|
SQL OUTER JOIN – exemple de jointure externe gauche
La requête suivante sélectionne tous les clients et leurs commandes:
1
2
3
4
5
6
|
SELECT c.customerid,
c.companyName,
orderid
FROM clients c
LEFT JOIN commandes o ON o.customerid = c .customerid
ORDER BY orderid
|
Toutes les lignes du tableau des clients sont répertoriées. Dans le cas où il n’y a pas de ligne correspondante dans la table orders trouvée pour la ligne dans la table customers, la colonne orderid dans la table orders est remplie avec des valeurs NULL.
Nous pouvons utiliser le diagramme de Venn pour visualiser comment SQL LEFT OUTER JOIN fonctionne.
SQL OUTER JOIN – jointure externe droite
La jointure externe droite SQL renvoie toutes les lignes de la table de droite et toutes les lignes correspondantes trouvées dans le tableau de gauche. La syntaxe de la jointure externe droite SQL est la suivante:
1
2
3
4
|
SELECT colonne1, colonne2 …
FROM table_A
RIGHT JOIN table_B ON join_condition
WHERE row_condition
|
La jointure externe droite SQL est également appelée jointure droite SQL.
SQL OUTER JOIN – exemple de jointure externe droite
L’exemple suivant illustre la Jointure externe droite SQL:
1
2
3
4
5
6
|
SELECT c.customerid,
c.companyName,
orderi d
FROM clients c
RIGHT JOIN commandes o ON o.customerid = c.customerid
ORDER BY orderid
|
La requête renvoie toutes les lignes de la table des commandes et toutes les lignes correspondantes trouvées dans la table des clients.
Le diagramme de Venn suivant illustre le fonctionnement de la jointure externe droite SQL:
SQL OUTER JOIN – jointure externe complète
La syntaxe de la jointure externe complète SQL est la suivante:
1
2
3
4
|
SELECT colonne1, colonne2 …
FROM table_A
FULL OUTER JOIN table_B ON join_condition
WHERE row_condition
|
La jointure externe complète SQL renvoie:
- tout ro ws dans la table de gauche table_A.
- toutes les lignes de la table de droite table_B.
- et toutes les lignes correspondantes dans les deux tables.
Certaines bases de données les systèmes de gestion ne prennent pas en charge la syntaxe de jointure externe complète SQL, par exemple MySQL. Parce que la jointure externe complète SQL renvoie un jeu de résultats qui est un résultat combiné de la jointure gauche SQL et de la jointure droite SQL.Par conséquent, vous pouvez facilement émuler la jointure externe complète SQL en utilisant la jointure gauche SQL et la jointure droite SQL avec l’opérateur UNION comme suit:
SQL OUTER JOIN – exemple de jointure externe complète
La requête suivante illustre la jointure externe complète SQL:
1
2
3
4
5
6
|
SELECT c.customerid,
c.companyName,
orderid
FROM clients c
commandes FULL OUTER JOIN o ON o.customerid = c.customerid
ORDER BY orderid
|
Le diagramme de Venn suivant illustre le fonctionnement de la jointure externe complète SQL:
Dans ce didacticiel, vous avez appris divers SQL OUTER JOIN, y compris SQL jointure gauche, SQL droite jointure et jointure externe SQL complète.
- Ce tutoriel vous a-t-il été utile?
- OuiNon