Sobes.tech
Middle

V čom sa líši LEFT JOIN od INNER JOIN?

sobes.tech AI

Odpoveď od AI

LEFT JOIN a INNER JOIN sú typy spojení tabuliek v SQL, ktoré sa líšia spôsobom výberu riadkov:

  • INNER JOIN vracia iba tie riadky, ktoré majú zhody v oboch tabuľkách podľa podmienky spojenia.
  • LEFT JOIN vracia všetky riadky z ľavej tabuľky a zodpovedajúce riadky z pravej. Ak zhoda chýba, stĺpce pravej tabuľky budú NULL.

Prí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 prvom prípade budú zobrazené iba záznamy s zhody v oboch tabuľkách. V druhom prípade všetky záznamy z table_a, aj keď nemajú zodpovedajúce záznamy v table_b.