LEFT JOIN- ja RIGHT JOIN -toiminnot

Käytetään kohteeseen
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Yhdistää lähdetaulukon tietueet käytettäessä missä tahansa FROM-lauseessa.

Syntaksi

FROM taulukko1 [ LEFT | OIKEA ] JOIN taulukko2
ON table1.field1compopr table2.field2

LEFT JOIN- ja RIGHT JOIN -toiminnoissa on seuraavat osat:

Osa Kuvaus
taulukko1, taulukko2 Niiden taulukkojen nimet, joista tietueet yhdistetään.
kenttä1, kenttä2 Yhdistettävien kenttien nimet. Kenttien on oltava samantyyppisiä ja sisältävät samantyyppisiä tietoja, mutta niillä ei tarvitse olla samaa nimeä.
vertailuoperaattori Mikä tahansa relaatiovertailuoperaattori: "=", "<", "", "><=", ">=" tai "<>."

      

Huomautuksia

Left JOIN -toiminnon avulla voit luoda vasemman ulkoliitoksesi. Vasen ulkoliitos sisältää kaikki ensimmäisen (vasemmanpuoleisen) taulukon tietueet, vaikkei toisessa (oikeanpuoleisessa) taulukossa olisikaan tietueita vastaavia arvoja.

Luo oikea ulkoliitos RIGHT JOIN -toiminnolla. Oikea ulkoliitos sisältää kaikki toisen (oikeanpuoleisen) taulukon tietueet, vaikkei ensimmäisessä (vasemmanpuoleisessa) taulukossa olisikaan tietueita vastaavia arvoja

LEFT JOIN -toiminnolla on esimerkiksi mahdollista valita Osastot-taulukosta (vasemmalla) ja Työntekijät-taulukosta (oikealla) kaikki osastot mukaan lukien ne osastot, joille ei ole määritetty työntekijöitä. Kun halutaan valita kaikki työntekijät mukaan lukien ne työntekijät, joita ei ole määritetty millekään osastolle, käytetään RIGHT JOIN -toimintoa.

Seuraava esimerkki osoittaa, kuinka Luokat- ja Tuotteet-taulukoiden LuokanTunnus-kentät voidaan liittää toisiinsa. Kysely tuottaa kaikkien luokkien luettelon, joka sisältää myös tuotteettomat luokat:

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

Tässä esimerkissä LuokanTunnus on liitetty kenttä, mutta ei sisälly kyselyn tuloksiin, koska se ei sisälly SELECT-lausekkeeseen. Jos haluat sisällyttää liitetyt kentät, kirjoita kentän nimi SELECT-lausekkeeseen , tässä tapauksessa Categories.CategoryID.

Kun halutaan luoda kysely, joka sisältää vain ne tiedostot, joissa liitettyjen kenttien tiedot ovat samat, käytetään INNER JOIN -toimintoa.

  • LEFT JOIN tai RIGHT JOIN voidaan sijoittaa INNER JOIN -lauseen sisään, mutta INNER JOIN -lausetta ei voi sijoittaa LEFT JOIN- tai RIGHT JOIN -lauseeseen. Lisätietoja liitosten sijoittamisesta toisten liitosten sisään on INNER JOIN -ohjeaiheessa.
  • Useita ON-lauseita voi linkittää toisiinsa. Lisätietoja lauseiden linkittämisestä on INNER JOIN -ohjeaiheessa.

Jos yrität liittää toisiinsa kenttiä, jotka sisältävät Muistio- tai OLE-objektitietoja, tapahtuu virhe.