Sobes.tech
Junior — Middle

Koja je razlika između LEFT JOIN i RIGHT JOIN u SQL i u kojim slučajevima se koriste?

sobes.tech АИ

Одговор од АИ

LEFT JOIN vraća sve redove iz leve tabele i odgovarajuće redove iz desne tabele. Ako u desnoj tabeli nema podudaranja, rezultat sadrži NULL za njene kolone.

RIGHT JOIN, naprotiv, vraća sve redove iz desne tabele i odgovarajuće iz leve, sa NULL tamo gde nema podudaranja.

Koristi se LEFT JOIN kada je potrebno dobiti sve podatke iz glavne (leve) tabele i dopuniti ih iz povezane, a RIGHT JOIN — kada je glavna tabela desna.

Primer:

SELECT a.id, b.value
FROM A a
LEFT JOIN B b ON a.id = b.a_id;

Ovde će biti svi zapisi iz A, čak i ako za njih nema podudaranja u B.