Junior — Middle
Kas saaksite selgitada erinevate tabelite ühenduste tüüpe SQL-is?
sobes.tech AI
Vastus AI-lt
SQL-is on mitu peamist liiki JOIN-e, mis võimaldavad ühendada andmeid kahest või enamast tabelist:
- INNER JOIN — tagastab ainult need read, kus vastavus on mõlemas tabelis vastavalt tingimusele.
- LEFT JOIN (LEFT OUTER JOIN) — tagastab kõik vasakpoolsed read ja vastavad parempoolsed read; kui vastavust ei ole, parempoolsed väärtused on NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — tagastab kõik parempoolsed read ja vastavad vasakpoolsed read.
- FULL JOIN (FULL OUTER JOIN) — tagastab kõik read mõlemast tabelist, täites NULL-idega kohtades, kus vastavust ei ole.
- CROSS JOIN — kahe tabeli kartesiaaniline korrutis, tagastab kõik võimalikud ridade kombinatsioonid.
INNER JOIN näide:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
See päring tagastab töötajate nimed ja nende osakondade nimed ainult töötajate jaoks, kellel on osakond määratud.