Sobes.tech
Junior — Middle

Quelle est la différence entre l'utilisation de INNER JOIN et OUTER JOIN en SQL lors de la jointure de tables?

sobes.tech IA

Réponse de l'IA

INNER JOIN ne renvoie que les lignes qui ont des correspondances dans les deux tables selon la condition de jointure. Si dans l'une des tables il n'y a pas d'enregistrement correspondant, cette ligne ne sera pas incluse dans le résultat.

OUTER JOIN (LEFT, RIGHT ou FULL) renvoie toutes les lignes d'une ou des deux tables, y compris celles sans correspondance. Dans ces cas, les valeurs manquantes sont remplies avec NULL.

Exemple:

-- INNER JOIN : uniquement les enregistrements correspondants
SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;

-- LEFT OUTER JOIN : tous les utilisateurs, même s'ils n'ont pas de commandes
SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;