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