LEFT JOIN și RIGHT JOIN

Joining Data in SQL

Maham Faisal Khan

Senior Content Developer, Data Science

Diagrama INNER JOIN

Diagrama pentru un INNER JOIN ON câmpul id

O diagramă reluată dintr-o lecție anterioară, care prezintă două tabele, left_table și right_table, și setul de rezultate după aplicarea unui inner join. Înregistrările irelevante pentru inner join sunt estompate.

Joining Data in SQL

Diagrama inițială LEFT JOIN

  • LEFT JOIN returnează toate înregistrările din tabelul stâng și înregistrările din tabelul drept care se potrivesc pe câmpul de îmbinare
    Diagrama pentru un LEFT JOIN ON câmpul id

O diagramă cu două tabele, left table și right table, cu săgeți spre înregistrările care se potrivesc pe coloana id. Înregistrările irelevante pentru left join sunt gri.

Joining Data in SQL

Diagrama LEFT JOIN

Diagrama pentru un LEFT JOIN ON câmpul id

O diagramă cu două tabele, left table și right table, și setul de rezultate după aplicarea unui left join. Înregistrările irelevante pentru left join sunt estompate.

Joining Data in SQL

Sintaxa LEFT JOIN

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

Notă. LEFT JOIN poate fi scris și ca 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                    | 
...
Joining Data in SQL

RIGHT JOIN

Diagrama pentru un RIGHT JOIN ON câmpul id

O diagramă cu două tabele, left table și right table, și setul de rezultate după aplicarea unui right join. Înregistrările irelevante pentru right join sunt gri.

Joining Data in SQL

Sintaxa RIGHT JOIN

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

Notă. RIGHT JOIN poate fi scris și ca RIGHT OUTER JOIN.

Joining Data in SQL

RIGHT JOIN cu președinți și prim-miniștri

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          |      
Joining Data in SQL

LEFT JOIN sau RIGHT JOIN?

  • RIGHT JOIN este mai rar utilizat decât LEFT JOIN
  • Orice RIGHT JOIN poate fi rescris ca LEFT JOIN
  • LEFT JOIN este mai intuitiv când se scrie de la stânga la dreapta
Joining Data in SQL

Să exersăm!

Joining Data in SQL

Preparing Video For Download...