Jointures LEFT et RIGHT

Joindre des données en SQL

Maham Faisal Khan

Senior Content Developer, Data Science

Diagramme d'un INNER JOIN

Diagramme d'un INNER JOIN ON le champ id

Un diagramme repris d'une leçon précédente, montrant deux tables, left_table et right_table, et l'ensemble de résultats après une jointure interne entre les deux. Les enregistrements non pertinents pour l'inner join sont estompés.

Joindre des données en SQL

Diagramme initial d'un LEFT JOIN

  • LEFT JOIN renvoie tous les enregistrements de la table de gauche, et ceux de la table de droite qui correspondent sur le champ de jointure indiqué
    Diagramme d'un LEFT JOIN ON le champ id

Un diagramme montrant deux tables, table de gauche et table de droite, avec des flèches vers les enregistrements correspondant sur la colonne id dans les deux tables. Les enregistrements non pertinents pour le left join sont grisés.

Joindre des données en SQL

Diagramme d'un LEFT JOIN

Diagramme d'un LEFT JOIN ON le champ id

Un diagramme montrant deux tables, table de gauche et table de droite, et l'ensemble de résultats après une jointure gauche. Les enregistrements non pertinents pour le left join sont estompés.

Joindre des données en SQL

Syntaxe d'un LEFT JOIN

SELECT p1.country, prime_minister, president
FROM prime_ministers AS p1
LEFT JOIN presidents AS p2
USING(country);

Remarque. LEFT JOIN peut aussi s'écrire LEFT OUTER JOIN.

| country        | prime_minister    | president               |
|----------------|-------------------|-------------------------|
| Egypt          | Mostafa Madbouly  | Abdel Fattah el-Sisi    |
| Portugal       | Luís Montenegro   | Marcelo Rebelo de Sousa |
| Pakistan       | Shehbaz Sharif    | Asif Ali Zardari        |
| United Kingdom | Keir Starmer      | null                    | 
| India          | Narendra Modi     | Droupadi Murmu          |
| Australia      | Anthony Albanese  | null                    | 
...
Joindre des données en SQL

RIGHT JOIN

Diagramme d'un RIGHT JOIN ON le champ id

Un diagramme montrant deux tables, table de gauche et table de droite, et l'ensemble de résultats après une jointure droite. Les enregistrements non pertinents pour le right join sont grisés.

Joindre des données en SQL

Syntaxe d'un RIGHT JOIN

SELECT *
FROM left_table
RIGHT JOIN right_table
ON left_table.id = right_table.id;

Remarque. RIGHT JOIN peut aussi s'écrire RIGHT OUTER JOIN.

Joindre des données en SQL

RIGHT JOIN avec presidents et prime ministers

SELECT p1.country, prime_minister, president
FROM prime_ministers AS p1
RIGHT JOIN presidents AS p2
USING(country);
| country        | prime_minister   | president               |
|----------------|------------------|-------------------------|
| Egypt          | Mostafa Madbouly | Abdel Fattah el-Sisi    |
| Portugal       | Luís Montenegro  | Marcelo Rebelo de Sousa |
| USA            | null             | Joe Biden               |
| Uruguay        | null             | Luis Lacalle Pou        |     
| Pakistan       | Shehbaz Sharif   | Asif Ali Zardari        |
| Chile          | null             | Gabriel Boric           |      
| India          | Narendra Modi    | Droupadi Murmu          |      
Joindre des données en SQL

LEFT JOIN ou RIGHT JOIN ?

  • RIGHT JOIN est moins utilisé que LEFT JOIN
  • Tout RIGHT JOIN peut être réécrit en LEFT JOIN
  • LEFT JOIN est souvent plus intuitif à saisir de gauche à droite
Joindre des données en SQL

Passons à la pratique !

Joindre des données en SQL

Preparing Video For Download...