Junior — Middle
Můžete uvést různé typy spojení tabulek v SQL a popsat jejich vlastnosti?
sobes.tech AI
Odpověď od AI
V SQL existuje několik hlavních typů spojení (JOIN), které umožňují spojovat data z dvou nebo více tabulek:
- INNER JOIN — vrací pouze řádky, kde jsou shody v obou tabulkách.
- LEFT JOIN (LEFT OUTER JOIN) — vrací všechny řádky z levé tabulky a odpovídající řádky z pravé; pokud shoda chybí, hodnoty z pravé tabulky jsou NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — naopak, vrací všechny řádky z pravé tabulky a odpovídající z levé.
- FULL JOIN (FULL OUTER JOIN) — vrací všechny řádky z obou tabulek, doplňuje NULL tam, kde není shoda.
- CROSS JOIN — kartézský součin, každý řádek z první tabulky je spojen s každým řádkem z druhé.
Příklad INNER JOIN:
SELECT users.name, orders.id
FROM users
INNER JOIN orders ON users.id = orders.user_id;
Tento dotaz vrátí uživatele, kteří mají objednávky.