Operasjonen INNER JOIN

Kombinerer poster fra to tabeller når det er samsvarende verdier i et felles felt.

Syntaks

FROM tabell1 INNER JOIN tabell2 ON tabell1.felt1compopr tabell2.felt2

Operasjonen INNER JOIN har følgende deler:

Del

Beskrivelse

tabell1, tabell2

Navnene på tabellene som postene kombineres fra.

felt1, felt2

Navnene på de sammenkoblede feltene. Hvis de ikke er numeriske, må feltene være av samme datatype og inneholde samme type data, men de trenger ikke ha samme navn.

smlopr

En relasjonssammenligningsoperator: "=," "<," ">," "<=," ">=," eller "<>."


Kommentarer

Du kan bruke en INNER JOIN-operasjon i enhver FROM-setning. Dette er den vanligste sammenføyningstypen. Indre sammenføyninger kombinerer poster fra to tabeller når det er samsvarende verdier i et felles felt.

Du kan bruke INNER JOIN med tabellene Avdeling og Ansatte for å velge alle ansatte i hver avdeling. Hvis du derimot ønsker å velge alle avdelinger (selv om noen ikke har ansatte tilknyttet seg) eller alle ansatte (selv om noen ikke er tilknyttet en avdeling), kan du bruke en LEFT JOIN- eller RIGHT JOIN-operasjon for å opprette en ytre kobling.

Hvis du prøver å sammenføye felt som inneholder objektdataene Notat eller OLE, oppstår det en feil.

Du kan sammenføye to numeriske felt av samme type. Du kan for eksempel sammenføye Autonummerering- og Lang-felter, da de er av samme type. Du kan imidlertid ikke sammenføye enkle og doble felttyper.

Følgende eksempel viser hvordan du kan sammenføye tabellene Kategorier og Produkter på CategoryID-feltet.

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

I forrige eksempel er CategoryID det sammenføyde feltet, men det er ikke inkludert i spørringsresultatet fordi det ikke er inkludert i uttrykket SELECT. Hvis du vil inkludere det sammenføyde feltet, skriver du inn feltnavnet i uttrykket SELECT, i dette tilfellet Categories.CategoryID.

Du kan også sammenføye flere ON-setninger i et JOIN-uttrykk, ved bruk av følgende syntaks:

SELECT felt
FROM tabell1 INNER JOIN tabell2
ON tabell1.felt1compoprtabell2.felt1 AND
ON tabell1.felt2compoprtabell2.felt2) OR
ON tabell1.felt3compoprtabell2.felt3)];

Du kan også neste JOIN-uttrykk ved bruk av følgende syntaks:

SELECT felt
FROM tabell1 INNER JOIN
(tabell2 INNER JOIN [( ]tabell3
[INNER JOIN [( ]tabellx [INNER JOIN ...)]
ON tabell3.felt3compoprtabellx.feltx)]
ON tabell2.felt2compoprtabell3.felt3)
ON tabell1.felt1compoprtabell2.felt2;

En LEFT JOIN eller en RIGHT JOIN kan nestes i en INNER JOIN, men en INNER JOIN kan ikke nestes i en LEFT JOIN eller en RIGHT JOIN.



Utvid ferdighetene dine
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Office Insiders

Var denne informasjonen nyttig?

Takk for tilbakemeldingen!

Takk for tilbakemeldingen! Det høres ut som det kan være lurt å sette deg i kontakt med én av våre Office-kundestøtteagenter.

×