Junior — Middle
Puteți explica diferențele dintre diferitele tipuri de conexiuni ale tabelelor în SQL?
sobes.tech AI
Răspuns de la AI
În SQL, există mai multe tipuri principale de join-uri (JOIN) care permit combinarea datelor din două sau mai multe tabele:
- INNER JOIN — returnează doar rândurile în care există o potrivire în ambele tabele conform condiției.
- LEFT JOIN (LEFT OUTER JOIN) — returnează toate rândurile din tabelul din stânga și rândurile corespunzătoare din dreapta; dacă nu există potrivire, valorile din dreapta vor fi NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — returnează toate rândurile din tabelul din dreapta și cele corespunzătoare din stânga.
- FULL JOIN (FULL OUTER JOIN) — returnează toate rândurile din ambele tabele, completând cu NULL acolo unde nu există potriviri.
- CROSS JOIN — produsul cartezian al celor două tabele, returnând toate combinațiile posibile de rânduri.
Exemplu de INNER JOIN:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Această interogare va returna numele angajaților și numele departamentelor lor doar pentru angajații care au un departament.