Sobes.tech
Junior

Mi a különbség a LEFT JOIN és az INNER JOIN között?

sobes.tech MI

Válasz az MI-től

Az INNER JOIN csak azokat a sorokat adja vissza, amelyek mindkét összekapcsolt táblában megfelelnek.

A LEFT JOIN (vagy LEFT OUTER JOIN) az összes sort visszaadja a bal oldali táblából és a megfelelő sorokat a jobb oldali táblából. Ha nincs megfelelés a jobb oldali táblában, akkor a jobb oldali oszlopok értékei NULL-ok lesznek.

Példa:

Tegyük fel, hogy két tábla van: Alkalmazottak (id, név) és Osztályok (id, név, vezető_id).

INNER JOIN Alkalmazottak ÉS Osztályok ON Alkalmazottak.id = Osztályok.vezető_id

Csak azokat az alkalmazottakat adja vissza, akik osztályvezetők.

LEFT JOIN Alkalmazottak ÉS Osztályok ON Alkalmazottak.id = Osztályok.vezető_id

Minden alkalmazottat visszaad. Azokat, akik osztályvezetők, az osztály adatai is szerepelnek. Az alkalmazottak, akik nem osztályvezetők, a Osztályok oszlopai NULL értékeket tartalmaznak.