Junior — Middle
Kuidas erinevad SQL-is sisemine ühendus ja parem väline ühendus?
sobes.tech AI
Vastus AI-lt
SQL-is erinevad sisemine ühendus (INNER JOIN) ja parem väline ühendus (RIGHT OUTER JOIN) selle poolest, millised tabeli read on tulemuses kaasatud.
-
INNER JOIN tagastab ainult need read, millel on vastavus mõlemas tabelis vastavalt ühendustingimusele.
-
RIGHT OUTER JOIN tagastab kõik read paremast tabelist ja vastavad read vasakust tabelist. Kui paremast tabelist rida ei ole vastavust vasakus, siis vasaku tabeli väljad on NULL.
Näide:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
-- Tagastab ainult need read, kus A.id vastab B.a_id-le
SELECT * FROM A RIGHT OUTER JOIN B ON A.id = B.a_id;
-- Tagastab kõik read B-st, isegi kui A-s ei ole vastavust