Outils pour utilisateurs

Outils du site


informatique:databases:join_representation

Représentation visuelle des jointures

Il existe 7 types de jointures possibles entre 2 tables.

Inner join

C'est la plus simple, la plus comprise et la plus courante. Cette requête renvoie tous les enregistrements de la table de gauche (table A) qui ont un enregistrement correspondant dans la table de droite (table B).

SELECT <select_list> 
FROM Table_A AS A
INNER JOIN Table_B AS B
ON A.Key = B.Key

Left join

Cette requête renvoie tous les enregistrements de la table de gauche (table A), même si l'un d'entre eux correspond à la table de droite (table B). Elle renvoie également tous les enregistrements correspondants de la table de droite.

SELECT <select_list> 
FROM Table_A AS A
LEFT JOIN Table_B AS B
ON A.Key = B.Key

Right join

Cette requête renvoie tous les enregistrements de la table de droite (table B), même si certains de ces enregistrements correspondent à ceux de la table de gauche (table A). Elle retournera également tous les enregistrements correspondants de la table de gauche.

SELECT <select_list> 
FROM Table_A AS A
RIGHT JOIN Table_B AS B
ON A.Key = B.Key

Outer join

Cette jointure peut également être appelée FULL OUTER JOIN ou FULL JOIN. Cette requête renvoie tous les enregistrements des deux tables, en joignant les enregistrements de la table de gauche (table A) qui correspondent aux enregistrements de la table de droite (table B).

SELECT <select_list> 
FROM Table_A AS A
FULL OUTER JOIN Table_B AS B
ON A.Key = B.Key

Left excluding join

Cette requête renvoie tous les enregistrements du tableau de gauche (tableau A) qui ne correspondent à aucun enregistrement du tableau de droite (tableau B).

SELECT <select_list> 
FROM Table_A AS A
LEFT JOIN Table_B AS B
ON A.Key = B.Key
WHERE B.Key IS NULL

Right excluding join

Cette requête renvoie tous les enregistrements de la table de droite (table B) qui ne correspondent à aucun enregistrement de la table de gauche (table A).

SELECT <select_list> 
FROM Table_A AS A
RIGHT JOIN Table_B AS B
ON A.Key = B.Key
WHERE A.Key IS NULL

Outer excluding join

Cette requête renvoie tous les enregistrements du tableau de gauche (tableau A) et tous les enregistrements du tableau de droite (tableau B) qui ne correspondent pas.

SELECT <select_list> 
FROM Table_A AS A
FULL OUTER JOIN Table_B AS B
ON A.Key = B.Key
WHERE A.Key IS NULL OR B.Key IS NULL
informatique/databases/join_representation.txt · Dernière modification : 2022/09/22 19:10 de alexis