JOIN en SQL est une clause utilisée pour combiner des lignes de deux tables ou plus sur la base d’une colonne contenant des valeurs liées. Son objectif principal est d’obtenir un ensemble de données avec des informations complètes et exhaustives. « Complet » fait référence ici à la structure des données obtenue par la combinaison des colonnes issues de la relation entre ces tables.

Pour répondre aux divers besoins d’extraction de données, la commande JOIN est divisée en plusieurs types : OUTER JOIN, INNER JOIN, RIGHT JOIN et LEFT JOIN.

Différences entre les types de JOIN en SQL

Voici une explication des différentes clauses JOIN accompagnée d’exemples de syntaxe pour vous aider à comprendre leurs différences :

1. FULL OUTER JOIN

La clause Outer join (ou Full Outer Join) retourne tous les enregistrements ou lignes, qu’ils aient des valeurs correspondantes ou non, dans les deux tables combinées. S’il n’y a pas de correspondance de données entre les deux tables, la partie manquante est automatiquement remplie avec la valeur NULL dans le résultat du join.

Syntaxe :

SQL

SELECT column_name(s)

FROM table1

FULL OUTER JOIN table2

ON table1.column_name = table2.column_name

WHERE condition;

2. LEFT JOIN

La clause Left Join est une opération qui retourne tous les enregistrements de la table de gauche (la première table) parmi les deux tables combinées. Toutes les données de la table de gauche sont conservées et affichées, même si les valeurs de la table de gauche ne correspondent à aucune donnée de la table de droite (la deuxième table). Les données de la table de droite qui n’ont pas de correspondance sont remplacées par NULL.

Syntaxe :

SQL

SELECT column_name(s)

FROM table1

LEFT JOIN table2

ON table1.column_name = table2.column_name;

3. RIGHT JOIN (Complément)

En tant qu’opposé du Left Join, la clause Right Join retourne tous les enregistrements de la table de droite (la deuxième table), ainsi que les données correspondantes de la table de gauche. S’il n’y a aucune donnée correspondante dans la table de gauche, le résultat du côté gauche sera NULL.

Syntaxe :

SQL

SELECT column_name(s)

FROM table1

RIGHT JOIN table2

ON table1.column_name = table2.column_name;

4. INNER JOIN (Complément)

Inner Join est le type de clause le plus fréquemment utilisé. Contrairement à Outer Join, Inner Join fonctionne de manière plus stricte en ne retournant que les lignes dont les données correspondent (l’intersection) dans les deux tables combinées.

Syntaxe :

SQL

SELECT column_name(s)

FROM table1

INNER JOIN table2

ON table1.column_name = table2.column_name;

Shares:
Laisser un commentaire

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