Kyselyn luominen useiden taulukoiden pohjalta

Joskus kyselyiden luominen ja käyttö 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

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

Kahden samankaltaisen taulukon kaikkien tietueiden tarkastelu

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 Muut-ryhmästä 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ä olevien kenttien luettelossa ensimmäistä kyselyyn sisällytettävää kenttää. Siirrä se sitten valittujen kenttien luetteloon napsauttamalla oikealle osoittavaa nuolipainiketta. Tee tämä kaikille muillekin tämän taulukon kentille, jotka haluat sisällyttää kyselyyn. Nämä voivat olla kenttiä, jotka haluat nähdä kyselyn tuloksissa tai joilla haluat rajoittaa tulosten rivejä 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 Muut-ryhmästä 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. Kaksoisnapsauta käytettävissä olevien kenttien luettelossa tilaustunnuksen kenttää. Näin siirrät sen valittujen kenttien luetteloon. Siirrä toimitusmaksun kenttä valittujen kenttien luetteloon kaksoisnapsauttamalla sitä.

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

  7. Kaksoisnapsauta käytettävissä olevien kenttien luettelossa etunimen kenttää. Näin siirrät sen valittujen kenttien luetteloon. Siirrä sukunimen kenttä valittujen kenttien luetteloon kaksoisnapsauttamalla sitä. 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 Muut-ryhmässä Kyselyn rakennenäkymä.

    Näytä taulukko -valintaikkuna avautuu.

  2. Kaksoisnapsauta Näytä taulukko -valintaikkunassa kahta taulukkoa, jotka sisältävät ne tiedot, jotka haluat sisällyttää kyselyysi, sekä niitä yhdistävää liitostaulukkoa. 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 Janeirossa toimiva yritys on löytänyt sinut verkkosivustosi kautta ja on kiinnostunut yhteistyöstä. He kuitenkin toimivat vain Riossa ja São Paulossa. Kyseinen yritys toimittaa kaikkia myymiäsi ruokatuotteita. Yritys on melko iso, joten se haluaa varmuuden siitä, että voit myydä heidän tuotteitaan tarpeeksi paljon, jotta yhteistyö on kannattavaa. He vaativat vuodessa vähintään 20 000 Brasilian realin myyntiä (noin 9 300 Yhdysvaltain dollaria). Voitko vastata heidän vaatimuksiinsa?

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 Muut-ryhmässä Kyselyn rakennenäkymä.

    Näytä taulukko -valintaikkuna tulee näkyviin.

  3. Kaksoisnapsauta Näytä taulukko -valintaikkunassa asiakastaulukkoa, tilaustaulukkoa ja tilaustietojen taulukkoa. Valitse tämän jälkeen Sulje.

    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 Muut-ryhmässä Kyselyn rakennenäkymä.

    Näyttöön avautuu uusi kyselyn rakenneruudukko ja Näytä taulukko ‑valintaikkuna.

  2. Valitse Näytä taulukko -valintaikkunassa Sulje.

  3. 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ä.

  4. 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.

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

  6. Jos haluat määrittää ehdon ensimmäisen taulukon kentälle, kirjoita WHERE, sen perään kentän nimi, vertailuoperaattori (yleensä se on yhtäsuuruusmerkki =) ja sitten haluamasi ehto. Voit lisätä muitakin ehtoja WHERE-lauseen loppuun AND-avainsanan ja saman syntaksin avulla. Esimerkki: WHERE [ClassLevel]="100" AND [CreditHours]>2. Kun olet määrittänyt haluamasi ehdot, paina Enteriä.

  7. Kirjoita UNION ja paina sitten Enteriä.

  8. 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ä.

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

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

  11. Lopeta kysely kirjoittamalla puolipiste (;).

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

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

Sivun alkuun

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

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×