Middle
Koja je razlika između LEFT JOIN i INNER JOIN?
sobes.tech АИ
Одговор од АИ
INNER JOIN vraća samo one redove koji imaju odgovarajuće vrednosti u obe tabele. Ako u jednoj od tabela nema odgovarajući zapis, taj red neće biti uključen u rezultat.
LEFT JOIN (ili LEFT OUTER JOIN) vraća sve redove iz leve tabele i odgovarajuće redove iz desne. Ako nema podudaranja u desnoj tabeli, polja te tabele će biti NULL u rezultatu.
Primer:
SELECT A.id, B.value
FROM A
INNER JOIN B ON A.id = B.a_id;
-- Vraća samo one id-ove iz A koji imaju odgovarajući zapis u B
SELECT A.id, B.value
FROM A
LEFT JOIN B ON A.id = B.a_id;
-- Vraća sve id-ove iz A, a za one bez podudaranja u B, vrednost će biti NULL