INNER JOIN, bewerking

Van toepassing op
Access voor Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Combineert records van twee tabellen als er overeenkomende waarden in een gemeenschappelijk veld staan.

Syntaxis

FROM table1 INNER JOIN table2 ON table1. field1compopr tabel2. veld2

De INNER JOIN-bewerking bevat de volgende onderdelen:

Onderdeel Beschrijving
tabel1, tabel2 De namen van de tabellen waaruit records worden gecombineerd.
field1, field2 De namen van de velden die worden samengevoegd. Als ze niet numeriek zijn, moeten de velden van hetzelfde gegevenstype zijn en hetzelfde soort gegevens bevatten, maar ze hoeven niet dezelfde naam te hebben.
compopr Elke relationele vergelijkingsoperator: "=," "<," ">," "<=," ">="" of "<>."

      

Opmerkingen

U kunt een INNER JOIN-bewerking gebruiken in een willekeurig FROM-component. Dit is het meest voorkomende join-type. Inner joins combineren records van twee tabellen als er overeenkomende waarden staan in een veld dat gemeenschappelijk is voor beide tabellen.

U kunt INNER JOIN gebruiken voor de tabellen Afdelingen en Werknemers om alle werknemers van elke afdeling te selecteren. Als u daarentegen alle afdelingen wilt selecteren (zelfs als aan sommige geen werknemers zijn toegewezen) of alle werknemers (zelfs als sommige niet zijn toegewezen aan een afdeling), kunt u een LEFT JOIN- of RIGHT JOIN-bewerking gebruiken om een outer join te maken.

Als u velden die Memo- of OLE-Object-gegevens wilt samenvoegen, treedt er een fout op.

U kunt alle willekeurige twee numerieke velden van hetzelfde type koppelen. U kunt bijvoorbeeld koppelen op basis van AutoNumber- en Long-velden omdat zij van hetzelfde type zijn. U kunt echter geen enkele en dubbele veldtypen koppelen.

Het volgende voorbeeld laat zien hoe u de tabellen Categorieën en Producten kunt samenvoegen aan de hand van het veld CategorieID:

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

In het voorgaande voorbeeld is het gekoppelde veld CategorieID, maar het is niet opgenomen in de queryuitvoer omdat het niet is opgenomen in de SELECT-instructie. Als u het gekoppelde veld wilt opnemen, neemt u de veldnaam op in de SELECT-instructie, Categories.CategoryIDin dit geval .

U kunt ook verschillende ON-componenten in een JOIN-instructie opnemen aan de hand van de volgende syntaxis:

SELECT-velden
FROM table1 INNER JOIN table2
OP tabel1. field1compoprtable2. veld1 EN
OP tabel1. field2compoprtable2. veld2) OF
OP tabel1. field3compoprtable2. field3)];

U kunt ook JOIN-instructies nesten met behulp van de volgende syntaxis:

SELECT-velden
FROM table1 INNER JOIN
(table2 INNER JOIN [( ]table3
[INNER JOIN [( ]tablex [INNER JOIN ...)]
OP tabel3. field3compoprtablex. fieldx)]
OP tabel2. field2compoprtable3. veld3)
OP tabel1. field1compoprtable2. veld2;

Een LEFT JOIN of een RIGHT JOIN kan mogelijk worden genest in een INNER JOIN, maar een INNER JOIN kan mogelijk niet worden genest binnen een LEFT JOIN of een RIGHT JOIN.