PaliSkill
SQL Intermédiaire

Leçon 3 / 9 — Chapitre 1: Jointures fondamentales

LEFT JOIN : garder toutes les lignes même sans correspondance

LEFT JOIN fonctionne comme INNER JOIN, avec une différence essentielle : il garde toutes les lignes de la table de gauche (la première citée), même quand aucune correspondance n'existe dans la table de droite. Les colonnes de la table de droite valent alors NULL (« aucune valeur »).

SELECT p.nom, c.quantite
FROM produits p
LEFT JOIN commandes c ON p.id = c.produit_id;

Cette fois, Stylo et Biscuits réapparaissent dans le résultat — puisque produits est la table de gauche —, mais avec c.quantite à NULL, faute de commande correspondante. Les autres lignes sont identiques à celles obtenues avec INNER JOIN.

À retenir :

  • LEFT JOIN table2 ON condition; garde toutes les lignes de la table de gauche, avec ou sans correspondance dans la table de droite.
  • Quand aucune correspondance n'existe, les colonnes de la table de droite valent NULL dans le résultat.
  • LEFT JOIN retourne toujours au moins autant de lignes qu'INNER JOIN sur la même condition — jamais moins.

À vous de jouer : comparez le nombre de lignes retournées par INNER JOIN et par LEFT JOIN sur cette même condition, et identifiez les lignes en plus.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 80 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès