Sobes.tech
Junior

Milyen típusú JOIN-ok léteznek az SQL-ben?

sobes.tech MI

Válasz az MI-től

SQL-ben a következő fő típusú JOIN műveletek léteznek:

  • INNER JOIN (vagy egyszerűen JOIN): Csak azokat a sorokat adja vissza, ahol a megadott feltétel alapján egyező értékek vannak mindkét táblában.

  • LEFT JOIN (vagy LEFT OUTER JOIN): Visszaadja a bal oldali tábla összes sorát és a jobb oldali táblában egyező sorokat. Ha nincs egyezés, a mezők NULL értékűek lesznek.

  • RIGHT JOIN (vagy RIGHT OUTER JOIN): Visszaadja a jobb oldali tábla összes sorát és a bal oldali táblában egyező sorokat. Ha nincs egyezés, a mezők NULL értékűek lesznek.

  • FULL JOIN (vagy FULL OUTER JOIN): Visszaadja az összes sort, ahol egyezés van a bal vagy jobb táblában. Ha nincs egyezés, a hiányzó táblából származó mezők NULL értékűek lesznek.

További JOIN típusok (a konkrét adatbázis-kezelő rendszertől függően):

  • CROSS JOIN: Keresztszorzatot ad vissza két tábla között. Minden első tábla sor minden második tábla sorral összekapcsolódik.

Szintaxis példák:

-- INNER JOIN
SELECT *
FROM Tabla1
INNER JOIN Tabla2 ON Tabla1.közös_oszlop = Tabla2.közös_oszlop;

-- LEFT JOIN
SELECT *
FROM Tabla1
LEFT JOIN Tabla2 ON Tabla1.közös_oszlop = Tabla2.közös_oszlop;

-- RIGHT JOIN
SELECT *
FROM Tabla1
RIGHT JOIN Tabla2 ON Tabla1.közös_oszlop = Tabla2.közös_oszlop;

-- FULL JOIN
SELECT *
FROM Tabla1
FULL JOIN Tabla2 ON Tabla1.közös_oszlop = Tabla2.közös_oszlop;

-- CROSS JOIN
SELECT *
FROM Tabla1
CROSS JOIN Tabla2;