INNER JOIN művelet

Hatókör
Microsoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

Segítségével rekordokat lehet kombinálni két táblából minden olyan esetben, ahol egyező értékek szerepelnek egy közös mezőben.

Szintaxis

FROM table1 INNER JOIN table2 ON table1. mező1összehasonlító operátor tábla2.mező2

Az INNER JOIN művelet részei a következők:

Rész Leírás:
tábla1, tábla2 Annak a két táblának a neve, amelyeknek a rekordjait egyesíti.
mező1, mező2 Az egyesítendő mezők neve. Ha a mezők nem numerikusak, a mezőknek ugyanolyan adattípusúaknak kell lenniük, és ugyanolyan jellegű adatokat kell tartalmazniuk, de a nevük lehet különböző.
összehasonlító operátor Bármely relációs összehasonlító operátor: "=", "", "=", ">=" vagy "<>".<><

      

Megjegyzések

INNER JOIN műveletet bármely FROM záradékban használhat. Ez az illesztések legáltalánosabb típusa. A belső illesztések két tábla rekordjait kombinálják minden olyan esetben, ahol a két tábla közös mezőjében egyező értékek szerepelnek.

Az INNER JOIN műveletet a Részlegek és Alkalmazottak táblával használva kijelölheti az összes alkalmazottat az egyes részlegekben. Ezzel szemben az összes részleg kijelöléséhez (még akkor is, ha néhányhoz nincs hozzárendelve alkalmazott) vagy az összes alkalmazott kijelöléséhez (még akkor is, ha néhányan nincsenek részleghez rendelve), akkor a LEFT JOIN vagy a RIGHT JOIN művelettel hozhat létre külső illesztést.

Ha Feljegyzés vagy OLE-objektum típusú adatokat tartalmazó mezőket próbál egymáshoz illeszteni, hibát fog jelezni a rendszer.

Bármely két, hasonló típusú numerikus mezőt egymáshoz illeszthet. Egymáshoz illeszthet például egy Számláló és egy Hosszú adattípusú mezőt, mivel azok típusa hasonló. Nem illeszthet egymáshoz azonban egy Szimpla és egy Dupla típusú mezőt.

Az alábbi példában az látható, hogy hogyan illesztheti egymáshoz a Kategóriák és a Termékek táblát a Kategóriaazonosító mezőnél:

SELECT CategoryName, ProductName
FROM Categories INNER JOIN Products
ON Categories.CategoryID = Products.CategoryID;

Az előző példában a Kategóriaazonosító az illesztett mező, de nem szerepel a lekérdezés kimenetében, mivel nem lett megadva a SELECT utasításban. Az illesztett mező megjelenítéséhez adja meg a mező nevét a SELECT utasításban – ebben az esetben a Categories.CategoryID.

Azt is megteheti, hogy több ON záradékot kapcsol össze egy JOIN utasításban, az alábbi szintaxis használatával:

SELECT mezők
FROM tábla1 INNER JOIN táblázat2
ON tábla1. mező1összehasonlítható2.mező1 ÉS
ON tábla1. mező2összehasonlítható2.mező2) VAGY
ON tábla1. mező3összehasonlítható2. mező3)];

JOIN utasításokat is beágyazhat az alábbi szintaxis használatával:

SELECT mezők
FROM table1 INNER JOIN
(table2 INNER JOIN [( ]tábla3
[INNER JOIN [( ]tablex [INNER JOIN ...)]
ON tábla3. field3compoprtablex.Field X)]
ON tábla2. mező2összehasonlító3. mező3)
ON tábla1. mező1összehasonlítható2.mező2;

A LEFT JOIN vagy a RIGHT JOIN műveletek beágyazhatók az INNER JOIN műveletekbe, az INNER JOIN műveletek azonban nem ágyazhatók be a LEFT JOIN vagy a RIGHT JOIN műveletekbe.