Sobes.tech
Junior

Quels types de JOIN existent en SQL?

sobes.tech IA

Réponse de l'IA

Il existe les principaux types de JOIN en SQL :

  • INNER JOIN (ou simplement JOIN) : Renvoie uniquement les lignes où il y a des correspondances de valeurs dans les deux tables selon la condition spécifiée.

  • LEFT JOIN (ou LEFT OUTER JOIN) : Renvoie toutes les lignes de la table de gauche et les lignes correspondantes de la droite. Si aucune correspondance n’est trouvée dans la table de droite, les champs seront NULL.

  • RIGHT JOIN (ou RIGHT OUTER JOIN) : Renvoie toutes les lignes de la table de droite et les lignes correspondantes de la gauche. Si aucune correspondance n’est trouvée dans la table de gauche, les champs seront NULL.

  • FULL JOIN (ou FULL OUTER JOIN) : Renvoie toutes les lignes où il y a une correspondance dans la gauche ou la droite. Si aucune correspondance n’est trouvée, les champs de la table manquante seront NULL.

Types supplémentaires de JOIN (dépend du SGBD spécifique) :

  • CROSS JOIN : Renvoie le produit cartésien de deux tables. Chaque ligne de la première table est combinée avec chaque ligne de la seconde.

Exemple de syntaxe :

-- INNER JOIN
SELECT *
FROM Table1
INNER JOIN Table2 ON Table1.colonne_commune = Table2.colonne_commune;

-- LEFT JOIN
SELECT *
FROM Table1
LEFT JOIN Table2 ON Table1.colonne_commune = Table2.colonne_commune;

-- RIGHT JOIN
SELECT *
FROM Table1
RIGHT JOIN Table2 ON Table1.colonne_commune = Table2.colonne_commune;

-- FULL JOIN
SELECT *
FROM Table1
FULL JOIN Table2 ON Table1.colonne_commune = Table2.colonne_commune;

-- CROSS JOIN
SELECT *
FROM Table1
CROSS JOIN Table2;