Junior — Middle
Vysvetlite rozdiely medzi rôznymi typmi spojení tabuliek v SQL.
sobes.tech AI
Odpoveď od AI
V SQL-e existuje niekoľko hlavných typov spojení (JOIN), ktoré umožňujú kombinovať údaje z dvoch alebo viacerých tabuliek:
- INNER JOIN — vracia iba tie záznamy, ktoré majú zhody v oboch tabuľkách.
- LEFT JOIN (alebo LEFT OUTER JOIN) — vracia všetky záznamy z ľavej tabuľky a zodpovedajúce z pravej; ak zhoda chýba, polia z pravej tabuľky budú NULL.
- RIGHT JOIN (alebo RIGHT OUTER JOIN) — naopak, vracia všetky záznamy z pravej tabuľky a zodpovedajúce z ľavej.
- FULL JOIN (alebo FULL OUTER JOIN) — vracia všetky záznamy z oboch tabuliek, dopĺňa NULL tam, kde nie je zhoda.
Príklad:
SELECT users.name, orders.id
FROM users
LEFT JOIN orders ON users.id = orders.user_id;
Táto otázka vráti všetkých používateľov a ich objednávky, ak existujú; ak nie, polia z orders budú NULL.