Sobes.tech
Junior — Middle

Pouvez-vous expliquer les différences entre une jointure interne et une jointure gauche en SQL?

sobes.tech IA

Réponse de l'IA

Inner Join (INNER JOIN) ne renvoie que les lignes qui ont des correspondances dans les deux tables selon la condition de jointure. Si une table ne possède pas de correspondance, cette ligne ne sera pas incluse dans le résultat.

Left Join (LEFT JOIN) renvoie toutes les lignes de la table de gauche et les lignes correspondantes de la table de droite. Si aucune correspondance n’est trouvée, les valeurs de la table de droite seront NULL.

Exemple:

SELECT a.id, a.name, b.order_id
FROM customers a
INNER JOIN orders b ON a.id = b.customer_id;

Ne renverra que les clients ayant des commandes.

SELECT a.id, a.name, b.order_id
FROM customers a
LEFT JOIN orders b ON a.id = b.customer_id;

Renverra tous les clients, y compris ceux sans commandes (order_id sera NULL).