Sobes.tech
Junior — Middle

Jaký je rozdíl mezi LEFT JOIN a RIGHT JOIN v SQL a v jakých případech se používají?

sobes.tech AI

Odpověď od AI

LEFT JOIN vrací všechny řádky z levé tabulky a odpovídající řádky z pravé tabulky. Pokud v pravé tabulce nejsou shody, výsledek obsahuje NULL pro její sloupce.

RIGHT JOIN naopak vrací všechny řádky z pravé tabulky a odpovídající z levé, s NULL tam, kde nejsou shody.

Používá se LEFT JOIN, když je třeba získat všechna data z hlavní (levé) tabulky a doplnit je z navázané, a RIGHT JOIN, když hlavní tabulka je pravá.

Příklad:

SELECT a.id, b.value
FROM A a
LEFT JOIN B b ON a.id = b.a_id;

Zde budou všechny záznamy z A, i když pro ně neexistují odpovídající záznamy v B.