Sobes.tech
Middle

Čím se liší LEFT JOIN od INNER JOIN?

sobes.tech AI

Odpověď od AI

LEFT JOIN a INNER JOIN jsou typy spojení tabulek v SQL, které se liší způsobem výběru řádků:

  • INNER JOIN vrací pouze řádky, které mají shody v obou tabulkách podle podmínky spojení.
  • LEFT JOIN vrací všechny řádky z levé tabulky a odpovídající řádky z pravé tabulky. Pokud shoda chybí, sloupce pravé tabulky budou NULL.

Příklad:

SELECT a.id, b.value
FROM table_a a
INNER JOIN table_b b ON a.id = b.a_id;

SELECT a.id, b.value
FROM table_a a
LEFT JOIN table_b b ON a.id = b.a_id;

V prvním případě budou zobrazeny pouze záznamy s shodami v obou tabulkách. Ve druhém případě všechny záznamy z table_a, i když nemají odpovídající záznamy v table_b.