Junior — Middle
Čime se razlikuje unutrašnje spajanje od desnog spoljnog spajanja u SQL?
sobes.tech АИ
Одговор од АИ
U SQL-u, unutrašnje spajanje (INNER JOIN) i desno spoljašnje spajanje (RIGHT OUTER JOIN) razlikuju se u tome koje redove iz tabela uključuju u rezultat.
-
INNER JOIN vraća samo one redove koji imaju podudarnosti u obe tabele prema uslovu spajanja.
-
RIGHT OUTER JOIN vraća sve redove iz desne tabele i odgovarajuće redove iz leve tabele. Ako za red iz desne tabele nema podudarnosti u levoj, polja leve tabele biće NULL.
Primer:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
-- Vraća samo redove gde A.id odgovara B.a_id
SELECT * FROM A RIGHT OUTER JOIN B ON A.id = B.a_id;
-- Vraća sve redove iz B, čak i ako nemaju podudarnost u A