Sobes.tech
Middle

Cum lucrezi cu SQL? Care sunt diferențele dintre INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN?

sobes.tech AI

Răspuns de la AI

JOIN SQL — o operațiune de unire a datelor din două tabele pe baza unui câmp legat. Diferențele dintre tipurile de JOIN:

  • INNER JOIN — returnează doar înregistrările care au potriviri în ambele tabele.

  • LEFT JOIN (LEFT OUTER JOIN) — returnează toate înregistrările din tabelul din stânga și cele potrivite din dreapta; dacă nu există potriviri, în partea dreaptă vor fi NULL.

  • RIGHT JOIN (RIGHT OUTER JOIN) — invers, returnează toate înregistrările din tabelul din dreapta și cele potrivite din stânga; dacă nu există potriviri, în partea stângă vor fi NULL.

  • FULL OUTER JOIN — returnează toate înregistrările din ambele tabele; dacă nu există potriviri, câmpurile corespunzătoare vor fi NULL.

Exemplu:

SELECT A.id, A.name, B.order_date
FROM Customers A
LEFT JOIN Orders B ON A.id = B.customer_id;

Această interogare va returna toți clienții cu comenzile lor, dacă există, sau NULL în câmpul order_date dacă nu există comenzi.