Kombinerar källtabellposter när de används i FROM-satser.
Syntax
FROM tabell1 [ VÄNSTER | HÖGER ] JOIN tabell2
ON table1.field1compopr table2.field2
Åtgärderna KOPPLA VÄNSTER och KOPPLA HÖGER består av följande element:
| Element | Beskrivning |
|---|---|
| tabell1, tabell2 | Namnen på de tabeller som innehåller de poster som ska kombineras. |
| fält1, fält2 | Namnen på de fält som ska kopplas. Fälten måste ha samma datatyp och innehålla samma typ av data, men de behöver inte ha samma namn. |
| operator | Alla relationsjämförelseoperatorer: "=," "<," ">," "<=," ">=" eller "<>." |
Kommentarer
Använd en LEFT JOIN-åtgärd för att skapa en vänster yttre koppling. Vänster yttre koppling tar med alla poster från den första (vänster) av två tabeller, även om det inte finns några matchande värden för poster i den andra tabellen (höger).
Använd en KOPPLA HÖGER-åtgärd för att skapa en höger yttre koppling. Höger yttre koppling tar med alla poster från den andra (höger) av två tabeller, även om det inte finns några matchande värden för poster i den första tabellen (vänster).
Du kan till exempel använda KOPPLA VÄNSTER med tabellerna för avdelning (vänster) och anställda (höger) för att välja alla avdelningar, även dem som inte har några anställda som har tilldelats. Om du vill markera alla anställda, även de som inte har tilldelats till en avdelning, använder du KOPPLA HÖGER.
I följande exempel visas hur du kan koppla tabellerna Kategorier och Produkter på fältet Kategori-ID. Frågan skapar en lista över alla kategorier, även dem som inte innehåller några produkter:
SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;
I det här exemplet är Kategori-ID det kopplade fältet, men tas inte med i frågeresultatet eftersom det inte ingår i SELECT-instruktionen. Om du vill ta med det kopplade fältet anger du fältnamnet i SELECT-instruktionen – i det här fallet Categories.CategoryID.
Om du vill skapa en fråga som innehåller bara de poster där data i de kopplade fälten är desamma, använder du en INRE KOPPLING-åtgärd.
- KOPPLA VÄNSTER eller KOPPLA HÖGER kan kapslas i en INRE KOPPLING, men INRE KOPPLING kan inte kapslas i KOPPLA VÄNSTER eller KOPPLA HÖGER. Läs diskussionen om kapsling i avsnittet om INRE KOPPLING och lär dig hur du kapslar kopplingar i andra kopplingar.
- Du kan länka flera ON-satser. Läs diskussionen om satslänkning i avsnittet om INRE KOPPLING och lär dig hur du gör detta.
Om du försöker koppla fält som innehåller datatypen Memo eller OLE-objekt uppstår ett fel.