Sobes.tech
Middle

Kuidas sa töötad SQL-iga? Millised on erinevused INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN vahel?

sobes.tech AI

Vastus AI-lt

SQL JOIN — on operatsioon, mis ühendab andmeid kahest tabelist seotud välja alusel. JOIN tüüpide erinevused:

  • INNER JOIN — tagastab ainult need kirjed, millel on vastavus mõlemas tabelis.

  • LEFT JOIN (LEFT OUTER JOIN) — tagastab kõik kirjed vasakust tabelist ja vastavad parempoolsed; kui vastavust ei ole, parempoolses osas on NULL.

  • RIGHT JOIN (RIGHT OUTER JOIN) — vastupidine, tagastab kõik kirjed paremast tabelist ja vastavad vasakult; kui vastavust ei ole, vasakul on NULL.

  • FULL OUTER JOIN — tagastab kõik kirjed mõlemast tabelist; kui vastavust ei ole, vastavates kohtades on NULL.

Näide:

SELECT A.id, A.name, B.order_date
FROM Customers A
LEFT JOIN Orders B ON A.id = B.customer_id;

See päring tagastab kõik kliendid ja nende tellimused, kui need on, või NULL order_date väljal, kui tellimusi ei ole.