Sobes.tech
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