Middle
Čime se razlikuju JOIN, LEFT JOIN i RIGHT JOIN?
sobes.tech АИ
Одговор од АИ
JOIN je operacija u SQL-u koja kombinuje redove iz dve tabele na osnovu uslova da se vrednosti u navedenim kolonama poklapaju.
- JOIN (ili INNER JOIN) vraća samo one redove koji imaju poklapanja u obe tabele.
- LEFT JOIN vraća sve redove iz leve tabele i odgovarajuće redove iz desne. Ako nema poklapanja, kolone desne tabele će biti NULL.
- RIGHT JOIN obrnuto, vraća sve redove iz desne tabele i odgovarajuće iz leve, sa NULL tamo gde nema poklapanja.
Primer:
SELECT * FROM A
JOIN B ON A.id = B.a_id; -- samo poklapajuće
SELECT * FROM A
LEFT JOIN B ON A.id = B.a_id; -- sve iz A + poklapanja iz B
SELECT * FROM A
RIGHT JOIN B ON A.id = B.a_id; -- sve iz B + poklapanja iz A