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