Junior — Middle
Pouvez-vous expliquer les différences entre les différents types de jointures de tables en SQL?
sobes.tech IA
Réponse de l'IA
En SQL, il existe plusieurs types principaux de jointures (JOIN) qui permettent de combiner des données de deux ou plusieurs tables :
- INNER JOIN — ne renvoie que les lignes où il y a une correspondance dans les deux tables selon la condition.
- LEFT JOIN (LEFT OUTER JOIN) — renvoie toutes les lignes de la table de gauche et les lignes correspondantes de la droite ; si aucune correspondance, les valeurs de la droite seront NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — renvoie toutes les lignes de la table de droite et les lignes correspondantes de la gauche.
- FULL JOIN (FULL OUTER JOIN) — renvoie toutes les lignes des deux tables, en remplissant avec NULL là où il n’y a pas de correspondance.
- CROSS JOIN — produit cartésien de deux tables, renvoyant toutes les combinaisons possibles de lignes.
Exemple d’INNER JOIN :
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Cette requête renverra les noms des employés et les noms de leurs départements uniquement pour les employés qui ont un département.