Junior — Middle
Meg tudná magyarázni az SQL-ben lévő különböző típusú táblacsatlakozások közötti különbségeket?
sobes.tech MI
Válasz az MI-től
SQL-ben több fő típusú csatlakozás (JOIN) létezik, amelyek lehetővé teszik adatok összekapcsolását két vagy több tábla között:
- INNER JOIN — csak azokat a sorokat adja vissza, ahol a feltétel szerint mindkét táblában van egyezés.
- LEFT JOIN (LEFT OUTER JOIN) — az összes sort a bal oldali táblából és a megfelelő sorokat a jobb oldaliból; ha nincs egyezés, a jobb oldal értékei NULL-ok lesznek.
- RIGHT JOIN (RIGHT OUTER JOIN) — az összes sort a jobb oldali táblából és a megfelelő sorokat a bal oldaliból; ha nincs egyezés, a bal oldal értékei NULL-ok lesznek.
- FULL JOIN (FULL OUTER JOIN) — mindkét táblából az összes sort visszaadja, ahol nincs egyezés, ott NULL értékekkel tölti ki.
- CROSS JOIN — két tábla kartézi szorzata, minden lehetséges sor kombinációt visszaad.
INNER JOIN példa:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Ez a lekérdezés csak azoknak a munkavállalóknak a neveit és osztályneveit adja vissza, akiknek van osztályuk.