Kyselyn luominen useiden taulukoiden pohjalta

Joskus kyselyiden luominen ja käyttö Accessissa tarkoittaa vain kenttien valitsemista taulukosta, ehkä joidenkin ehtojen määrittämistä ja tämän jälkeen tulosten tarkastelua. Usein tilanne on kuitenkin sellainen, että tarvittavat tiedot ovat levällään useissa taulukoissa. Onneksi voit kuitenkin luoda kyselyn, joka yhdistää tietoja useista lähteistä. Tässä artikkelissa käsitellään joitain tilanteita, joissa hyödynnät tietoja useista lähteistä, ja annetaan ohjeet tämän toteuttamiseen.

Sisältö

Kyselyn tietojen täydentäminen liittyvän taulukon tiedoilla

Eteesi saattaa tulla tilanne, jossa yhteen taulukkoon perustuva kysely antaa tarvitsemasi tiedot, mutta toisen taulukon tietojen avulla tulokset olisivat vielä selkeämpiä ja hyödyllisempiä. Oletetaan, että sinulla on esimerkiksi luettelo työntekijätunnuksista kyselysi tuloksissa. Tajuat, että olisi hyödyllisempää nähdä tuloksissa myös työntekijöiden nimet, mutta ne ovat toisessa taulukossa. Jotta saat työntekijöiden nimet näkyviin hakutuloksissasi, sinun täytyy sisällyttää molemmat taulukot kyselyysi.

Kyselyn luominen ensisijaisesta taulukosta ja liittyvästä taulukosta ohjatulla kyselyn luomisella

  1. Varmista, että taulukoilla on määritetty suhde ikkunassa Yhteydet-ikkuna.

    Ohjeet

    1. Valitse Tietokantatyökalut-välilehden Näytä/piilota-ryhmästä Yhteydet.

    2. Valitse Rakenne-välilehden Yhteydet-ryhmässä Kaikki yhteydet.

    3. Selvitä taulukot, joilla pitäisi olla määritetty yhteys.

      • Jos taulukot näkyvät Yhteydet-ikkunassa, tarkista, että yhteys on jo määritetty.

        Yhteys näytetään viivana, joka yhdistää taulukot yhteisessä kentässä. Kaksoisnapsauttamalla yhteysviivaa voit tarkistaa, mitkä taulukoiden kentät on yhdistetty.

      • Jos taulukoita ei näy Yhteydet-ikkunassa, sinun täytyy lisätä ne.

        Valitse Rakenne-välilehden Näytä tai piilota -ryhmästä Taulukoiden nimet.

        Kaksoisnapsauta taulukoita, jotka haluat nähdä, ja valitse sitten Sulje.

    4. Jos et löydä yhteyttä kahden taulukon välillä, luo yhteys vetämällä kenttä yhdestä taulukosta toiseen. Kenttien, joista luot yhteyden taulukoiden välillä, täytyy olla tietotyypiltään identtisiä.

      Huomautus: Voit luoda yhteyden Laskurikentän tietotyyppi-kentän ja Luku-tietotyyppi-kentän välille, jos tämän toisen kentän koko tukee pitkiä kokonaislukuja. Jos kyseessä on yksi-moneen-yhteys, tilanne on usein tämä.

      Näyttöön tulee Muokkaa yhteyksiä -valintaikkuna.

    5. Luo yhteys valitsemalla Luo.

      Jos haluat lisätietoja siitä, mitä vaihtoehtoja sinulla on yhteyttä luodessasi, lue ohjeartikkeli Yhteyden luominen, muokkaaminen ja poistaminen.

    6. Sulje Yhteydet-ikkuna.

  2. Valitse Luo-välilehden Kyselyt-ryhmässä Ohjattu kyselyn luominen

  3. Valitse Uusi kysely -valintaikkunasta Ohjattu yksinkertaisen kyselyn luominen ja valitse sitten OK.

  4. Napsauta taulukoiden ja kyselyiden yhdistelmäruudussa sitä taulukkoa, joka sisältää kyselyyn sisällytettävät perustiedot.

  5. Napsauta Käytettävissä olevat kentät -luettelossa ensimmäistä kenttää, jonka haluat sisällyttää kyselyyn, ja siirrä sitten kenttä Valitut kentät -luetteloon napsauttamalla oikeaa nuolipainiketta. Tee sama jokaiselle taulukon lisäkentälle, jonka haluat sisällyttää kyselyyn. Nämä voivat olla kenttiä, jotka haluat palauttaa kyselyn tuloksissa, tai kenttiä, joita haluat käyttää tulosterivien rajoittamiseen ehtojen avulla.

  6. Napsauta taulukoiden ja kyselyiden yhdistelmäruudussa sitä taulukkoa, joka sisältää liittyvät tiedot, joilla haluat täydentää kyselyn tuloksia.

  7. Lisää tästä taulukosta haluamasi kentät valittujen taulukoiden luetteloon ja valitse sitten Seuraava.

  8. Valitse Haluatko yksityiskohtaisen kyselyn vai yhteenvetokyselyn? -kohdasta yksityiskohtaisen kyselyn tai yhteenvetokyselyn asetus.

    Jos et halua kyselyn suorittavan mitään koostefunktioita (Summa, Keskiarvo, Pienin, Suurin, Laske, Keskihajonta tai Varianssi), valitse yksityiskohtainen kysely. Jos haluat kyselyn suorittavan koostefunktion, valitse yhteenvetokysely. Kun olet tehnyt valintasi, valitse Seuraava.

  9. Saat tulokset näkyviin valitsemalla Valmis.

Northwind-mallitietokantaan perustuva esimerkki

Seuraavassa esimerkissä luot ohjatulla kyselyn luontitoiminnolla kyselyn, joka näyttää luettelon tilauksista, kunkin tilauksen toimitusmaksun ja tilauksen käsitelleen työntekijän nimen.

Huomautus: Tässä esimerkissä joudut muokkaamaan Northwind-mallitietokantaa. Sinun kannattaa ehkä ottaa siitä varmuuskopio ja tehdä tässä esimerkissä mainitut toimet tähän varmuuskopioversioon.

Kyselyn luominen ohjatulla kyselyn luomisella.

  1. Avaa Northwind-mallitietokanta. Sulje kirjautumislomake.

  2. Valitse Luo-välilehden Kyselyt-ryhmässä Ohjattu kyselyn luominen

  3. Valitse Uusi kysely -valintaikkunasta Ohjattu yksinkertaisen kyselyn luominen ja valitse sitten OK.

  4. Valitse taulukoiden ja kyselyiden yhdistelmäruudusta Taulukko: Tilaukset.

  5. Siirrä kenttä Valittujen kenttien luetteloon kaksoisnapsauttamalla Järjestystunnus-kohtaa Käytettävissä olevat kentät -luettelossa. Siirrä kenttä Valitut kentät -luetteloon kaksoisnapsauttamalla Toimitusmaksu-kohtaa.

  6. Valitse taulukoiden ja kyselyiden yhdistelmäruudusta Taulukko: Työntekijät.

  7. Siirrä kenttä Valittujen kenttien luetteloon kaksoisnapsauttamalla Etunimi-kohtaa Käytettävissä olevat kentät -luettelossa. Siirrä kenttä Valitut kentät -luetteloon kaksoisnapsauttamalla Sukunimi-kohtaa. Napsauta Seuraava.

  8. Koska luot luetteloa kaikista tilauksista, sinun kannattaa käyttää yksityiskohtaista kyselyä. Jos olet laskemassa toimitusmaksuja yhteen työntekijäkohtaisesti tai hyödyntämässä joitain muita koostefunktioita, käytä yhteenvetokyselyä. Valitse Yksityiskohtainen (näyttää kaikkien tietueiden kaikki kentät) ja sitten Seuraava.

  9. Saat tulokset näkyviin valitsemalla Valmis.

Kysely palauttaa luettelon, joka sisältää tilaukset, kunkin tilauksen toimitusmaksun ja kunkin tilauksen käsittelijän nimen.

Sivun alkuun

Kahden taulukon tietojen yhdistäminen hyödyntämällä niiden yhteyksiä kolmannessa taulukossa

Usein kahden taulukon tiedot liittyvät toisiinsa kolmannen taulukon kautta. Tilanne on usein tämä, kun kahden ensimmäisen taulukon välillä on monta-moneen-yhteys. Usein kahden taulukon välinen monta-moneen-yhteys kannattaa jakaa kahdeksi yksi-moneen-yhteydeksi kolmen taulukon avulla. Tätä varten sinun täytyy luoda kolmas taulukko (niin sanottu liitostaulukko tai yhteystaulukko), jolla on perusavain ja viiteavain kahdelle muulle taulukolle. Tämän jälkeen luodaan yksi-moneen-yhteys liitostaulukon jokaiselle viiteavaimelle ja vastaavalle perusavaimelle yhdessä taulukoista. Tällaisessa tilanteessa sinun täytyy sisällyttää kaikki kolme taulukkoa kyselyysi, vaikka haluaisit hakea tietoja vain kahdesta.

Valintakyselyn luominen taulukoista monta-moneen-yhteyden avulla

  1. Valitse Luo-välilehden Kyselyt-ryhmästä Kyselyn rakennenäkymä

  2. Kaksoisnapsauta kahta taulukkoa, jotka sisältävät kyselyyn sisällytettävät tiedot, sekä liitoskohtataulukkoa, joka linkittää ne, ja valitse sitten Sulje.

    Kaikki kolme taulukkoa näytetään kyselyn rakennenäkymässä siten, että ne on yhdistetty asianmukaisissa kentissä.

  3. Kaksoisnapsauta kaikkia niitä kenttiä, joita haluat käyttää kyselyssä. Kukin kentistä näytetään tämän jälkeen Kyselyn rakenneruudukko -näkymässä.

  4. Voit antaa kenttien ehdot kyselyn rakenneruudukon Ehdot-rivillä. Jos haluat käyttää kentän ehtoa näyttämättä kenttää kyselyn tuloksissa, poista kyseisen kentän Näytä-rivin valintaruudun valinta.

  5. Jos haluat lajitella tulokset kentän arvojen perusteella, napsauta kyselyn rakenneruudukossa kentän Lajittelu-rivillä joko Nouseva tai Laskeva (sen perusteella, miten haluat lajitella tiedot).

  6. Valitse Rakenne-välilehden Tulokset-ryhmästä Suorita.

    Access näyttää kyselyn tulokset tietotaulukkonäkymässä.

Northwind-mallitietokantaan perustuva esimerkki

Huomautus: Tässä esimerkissä joudut muokkaamaan Northwind-mallitietokantaa. Sinun kannattaa ehkä ottaa tietokannasta varmuuskopio ja tehdä tässä esimerkissä mainitut toimet tähän varmuuskopioversioon.

Oletetaan, että sinulla on uusi mahdollisuus: Rio de Janeiron toimittaja on löytänyt verkkosivustosi ja haluaa ehkä tehdä liiketoimintaa kanssasi. Ne toimivat kuitenkin vain Riossa ja läheisessä São Paulossa. Ne toimittavat kaiken tuoteluokan, jonka toimitat välittäjänä. Ne ovat melko suurta liiketoimintaa, ja haluat varmistusten avulla, että voit tarjota heille riittävästi mahdollisuuksia myyntiin, jotta siitä on hyötyä: myynnin arvo on vähintään 20 000,00 R $/vuosi (noin 9 300,00 $). Voitko toimittaa heille markkina-tiedot, jotka he tarvitsevat?

Tiedot, joiden avulla voit tarkistaa tämän, ovat kahdessa eri paikassa: asiakastaulukossa ja tilaustietojen taulukossa. Ne on yhdistetty toisiinsa tilaustaulukon avulla. Yhteydet näiden taulukoiden välille on jo määritetty. Tilaustaulukossa kullakin tilauksella voi olla vain yksi asiakas, joka on yhdistetty asiakastaulukon asiakastunnuskenttään. Jokainen tilaustietojen taulukon tietue on yhdistetty vain yhteen tilaustaulukon tilaukseen tilaustunnuksen kentässä. Yksittäisellä asiakkaalla voi siis olla monta tilausta, joista jokaisella voi olla monia tilaustietoja.

Tässä esimerkissä luet ristiintaulukointikyselyn, jolla näytät vuosittaisen kokonaismyynnin Rio de Janeirossa ja São Paulossa.

Kyselyn luominen rakennenäkymässä

  1. Avaa Northwind-tietokanta. Sulje kirjautumislomake.

  2. Valitse Luo-välilehden Kyselyt-ryhmästä Kyselyn rakennenäkymä

  3. Kaksoisnapsauta Asiakkaat,Tilaukset jasittenTilauksen tiedot.

    Kaikki kolme taulukkoa näytetään kyselyn rakennenäkymässä siten.

  4. Lisää asiakastaulukon kaupunkikenttä kyselyn rakenneruudukkoon kaksoisnapsauttamalla kenttää.

  5. Kirjoita kyselyn rakenneruudukon kaupungin sarakkeen ehtojen riville In ("Rio de Janeiro","São Paulo"). Tällä tavoin kyselyyn sisällytetään vain ne tietueet, joissa asiakas on jommastakummasta näistä kaupungeista.

  6. Kaksoisnapsauta tilaustietojen taulukossa toimituspäivän ja yksikköhinnan kenttiä.

    Ne lisätään kyselyn rakenneruudukkoon.

  7. Valitse kyselyn rakenneruudukon toimituspäivän sarakkeen kenttärivi. Korvaa [ShippedDate] arvolla Year: Format([ShippedDate],"yyyy"). Tämä luo kentän tunnusnimen (tässä tapauksessa Year), jolla voit käyttää toimituspäiväkentästä pelkkää vuoden osiota.

  8. Valitse kyselyn rakenneruudukon yksikköhinnan sarakkeen kenttärivi. Korvaa [UnitPrice] arvolla Sales: [Order Details].[UnitPrice]*[Quantity]-[Order Details].[UnitPrice]*[Quantity]*[Discount]. Tämä luo kentän tunnusnimen (tässä tapauksessa Sales), joka laskee kunkin tietueen myynnin.

  9. Valitse Rakenne-välilehden Kyselylaji-ryhmästä Ristiintaulukointi.

    Kyselyn rakenneruudukkoon ilmestyy kaksi uutta riviä: Yhteensä ja Ristiintaulukointi.

  10. Napsauta kyselyn rakenneruudukon kaupungin sarakkeen Ristiintaulukointi-riviä ja valitse sitten Riviotsikko.

    Tällä tavoin kaupunkiarvot näytetään riviotsikoina (eli kysely palauttaa yhden rivin kullekin kaupungille).

  11. Napsauta vuoden sarakkeen Ristiintaulukointi-riviä ja valitse sitten Sarakeotsikko.

    Tällä tavoin vuoden arvot näytetään sarakeotsikoina (eli kysely palauttaa yhden sarakkeen kullekin vuodelle).

  12. Napsauta myynnin sarakkeen Ristiintaulukointi-riviä ja valitse sitten Arvo.

    Tällä tavoin myynnin arvot näytetään rivien ja sarakkeen yhtymäkohdassa (eli kysely palauttaa yhden myynnin arvon kullekin kaupungin ja vuoden yhdistelmälle).

  13. Napsauta myynnin sarakkeen Summat-riviä ja valitse sitten Summa.

    Näin kysely laskee yhteen tämän sarakkeen arvot.

    Voit jättää kahden muun sarakkeen Summat-riville oletusarvon (Ryhmittelyperuste), koska haluat nähdä näiden sarakkeiden kaikki arvot, et koostearvoja.

  14. Valitse Rakenne-välilehden Tulokset-ryhmästä Suorita.

Nyt sinulla on kysely, joka palauttaa Rio de Janeiron ja São Paulon vuosittaiset kokonaismyynnit.

Sivun alkuun

Kahden samankaltaisen taulukon kaikkien tietueiden tarkastelu

Joskus haluat ehkä yhdistää tietoja kahdesta taulukosta, joilla on identtinen rakenne ja joista toinen sijaitsee toisessa tietokannassa. Mieti alla kuvattua tilannetta.

Olet opiskelijatietoja käsittelevä analyytikko. Oppilaitoksesi on jakamassa tietoja toisen oppilaitoksen kanssa, jotta molemmat voisivat parantaa opetussuunnitelmiaan. Joidenkin tarkasteltavien seikkojen kannalta olisi parempi nähdä kaikki tietueet molemmista oppilaitoksista yhdessä (oppilaitosten tietueiden erillisen tarkastelun asemesta).

Voisit tuoda toisen oppilaitoksen tiedot uusiin taulukoihin tietokannassasi, mutta tässä tapauksessa toisen koulun tietojen muutoksia ei toteutettaisi tietokannassasi. Parempi ratkaisu on linkittää toisen oppilaitoksen taulukoihin ja luoda sitten kyselyitä, jotka yhdistävät tiedot suorittamisen yhteydessä. Näin voit analysoida tietoja yhtenä joukkona sen sijaan, että tekisit kaksi analyysia, joita yrittäisit tulkita yhtenä.

yhdistämiskysely mahdollistaa kahden rakenteeltaan identtisen taulukon kaikkien tietueiden tarkastelun.

Yhdistämiskyselyitä ei voi näyttää rakennenäkymässä. Luot ne SQL-komennoilla, jotka annat SQL-näkymän objektivälilehdessä.

Yhdistämiskyselyn luominen kahden taulukon avulla

  1. Valitse Luo-välilehden Kyselyt-ryhmästä Kyselyn rakennenäkymä

  2. Valitse Rakennenäkymä-välilehden kyselytyypin ryhmästä Yhdiste.

    Kysely siirtyy rakennenäkymästä SQL-näkymään. Tässä vaiheessa SQL-näkymän objektivälilehti on tyhjä.

  3. Kirjoita SQL-näkymässä SELECT ja sen perään luettelo niistä ensimmäisen taulukon kentistä, jotka haluat sisällyttää kyselyyn. Kenttien nimet tulisi sulkea hakasulkeisiin ja erottaa toisistaan pilkuilla. Kun olet kirjoittanut kaikkien haluamiesi kenttien nimet, paina Enteriä. Kohdistin siirtyy SQL-näkymässä yhden rivin alaspäin.

  4. Kirjoita FROM ja sen perään kyselyyn sisällytettävän ensimmäisen taulukon nimi. Paina Enteriä.

  5. Jos haluat määrittää ensimmäisen taulukon kentälle ehdon, kirjoita WHEREja sen jälkeen kentän nimi, vertailuoperaattori (yleensä yhtäläisyysmerkki (=)) ja ehto. Voit lisätä WHERE-lauseen loppuun lisäehtoja KÄYTTÄMÄLLÄ JA-avainsanaa ja samaa syntaksia, jota käytetään ensimmäisessä ehdossa. esimerkiksi WHERE [ClassLevel]="100" AND [CreditHours]>2. Kun olet määrittänyt ehdot, paina ENTER-näppäintä.

  6. Kirjoita UNION ja paina sitten Enteriä.

  7. Kirjoita SELECT ja sen perään luettelo niistä toisen taulukon kentistä, jotka haluat sisällyttää kyselyyn. Sinun tulisi sisällyttää tästä taulukosta samat kentät kuin ensimmäisestä taulukosta (ja samassa järjestyksessä). Kenttien nimet tulisi sulkea hakasulkeisiin ja erottaa toisistaan pilkuilla. Kun olet kirjoittanut kaikkien haluamiesi kenttien nimet, paina Enteriä.

  8. Kirjoita FROM ja sen perään kyselyyn sisällytettävän toisen taulukon nimi. Paina Enteriä.

  9. Jos haluat, voit lisätä WHERE-lauseen kuten vaiheessa 6.

  10. Lopeta kysely kirjoittamalla puolipiste (;).

  11. Valitse Rakenne-välilehden Tulokset-ryhmästä Suorita.

    Kyselyn tulokset näytetään taulukkonäkymässä.

Sivun alkuun

Katso myös

Taulukoiden ja kyselyjen liittäminen

Tarvitsetko lisäohjeita?

Kehitä Office-taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

×