
<- Kyselyoppaan sisällysluettelo | |
<- Edellinen kyselyoppaan juttu | Seuraava kyselyoppaan juttu -> |
Kyselyssä voi viitata (reference) toiseen kyselyyn eli käyttää hyödyksi jo olemassa olevaa kyselyä ja jatkaa sen lopputuloksen jalostamista edelleen. Ominaisuudesta on hyötyä esimerkiksi tilanteissa, joissa samasta aineistosta pitää muodostaa useita erilaisia osajoukkoja.
[Edit 10/2016: Väline kehittyy joten tämä teksti on tarkistettu ja korvattu lokakuussa 2016.]
Reference -viittauksen toimintaperiaate
Reference jatkaa edellisen kyselyn tuloksesta. Käytetäänpä esimerkkinä Wikipedian kuntaluetteloa, josta tehtiin kysely jo aiemmin: Power Query: käyttöliittymä ja perusperiaatteet.
Oletetaan, että aineistosta pitää saada kaksi erillistä luetteloa, joista toisessa on kaupungit ja toisessa kunnat. Mikäli tiedot noudetaan Wikipediasta kahdella erillisellä kyselyllä, molemmissa kyselyissä suoritetaan operaatioita, joista kolme ensimmäistä ovat täsmälleen samoja:
Toistosta ei välttämättä ole haittaa tässä tapauksessa, kun kyselyt ovat hyvin yksinkertaisia. Molemmat kyselyt pystyisi jopa luomaan helposti tekemällä ensimmäisestä kyselystä kaksoiskappaleen, kuten edellisessä jutussa kerrottiin.
Mutta pohdipa tilannetta, jossa vastaavia samankaltaisia kyselyitä pitäisi luoda jokaiselle maakunnalle omansa (noin 20) ja muutaman viikon kuluttua sinun pitäisi tehdä kyselyihin muutoksia, kuten vaihtaa sarakkeen tietotyyppiä. Joutuisit tekemään muutoksen jokaiseen monistettuun kyselyyn, pahimmillaan 20 kertaan.
Kyselyiden ylläpitämisen ja muokkaamisen kannalta on siis fiksumpaa, että teet kaikista samalla tavalla suoritettavista operaatioista yhden kyselyn (vaiheet 1 – 3). Kun kysely on valmis, luot loput kyselyt, jotka viittaavat kyseiseen kyselyyn eli jatkavat sen muodostamasta tuloksesta eteenpäin ja suorittavat toisistaan eroavat vaiheet (kuten vaiheen 4 suodatus). Lopulta sinulla on kolme kyselyä (tai 20) ja jos olet suunnitellut kyselyt fiksusti, sinun ei tarvitse tehdä muutoksia kuin ensimmäiseen, jos datan rakenne muuttuu.
Ohje: Aiempaan kyselyyn viittaaminen
- Luo ensin Kaikki kunnat -niminen kysely, joka suorittaa yhteiset vaiheet.
(Ohjeet löytyvät Power Query: käyttöliittymä ja perusperiaatteet -jutusta.) - Tuo esiin kyselyt:
* Excel 2010-versiossa Power Query > Show Pane (Power Query > Näytä ruutu) -painikkeella
* Excel 2016 -versiossa Data > Show Queries -painikkeella.
* Power BI Desktopissa siirtymällä muokkaamaan kyselyitä Home > Edit Queries -komennolla. - Valitse kyselyn päältä pikavalikosta Reference (Viittaa). (Power BI Desktopissa komento löytyy Queries-paneelista kyselyn pikavalikosta.)
- Kyselyeditori muodostaa uuden kyselyn. Huomaa, että kyseessä ei ole aiemman kyselyn kopio vaan uusi kysely jatkaa edellisen kyselyn lopputuloksesta.
- Muokkaa uutta muodostunutta kyselyä.
- Jos olet tuonut editoriin kaavarivin esiin (View > Formula bar, Näytä > Kaavarivi), näet että lähteenä on edellinen kysely ja voit jatkaa siitä mihin se jäi. Anna uudelle kyselyllä fiksu nimi, suodata kaupungit esiin ja toteuta muut haluamasi operaatiot, kuten Kuntamuoto-sarakkeen poistamisen.
- Lataa tiedot.
- Muodosta kuntia varten oma kyselynsä esimerkiksi tekemällä viittaavasta Kaupungit-kyselystä kaksoiskappaleen. Huomaa, että Power BI Desktopissa sinun pitää ensin siirtyä kyselyeditoriin, jotta pääset tekemään kyselystä kaksoiskappaleen.
- Muokkaa kaksoiskappaleesta sellainen, joka suodattaa kunnat. Pääset muuttamaan suodatusvaihetta ratas-painikkeen avulla.
Viittaavan kyselyn päivitys
Kun päivität viittaavan kyselyn, Power Query suorittaa ensin alkuperäisen kyselyn toimenpiteet ja jatkaa sitten viittaavan kyselyn vaiheiden suorittamisella.
Kokeile
Tee muutos ensimmäiseen kyselyyn poistamalla siitä esimerkiksi Väestötiheys-sarake. Kun päivität muut kyselyt, huomaat että väestötiheys poistuu niistä tarvitsematta tehdä muutosta kaikkiin kyselyihin.
Vihje: pyri välttämään kyselyissäsi sarakkeiden siirtämistä esim. hiirellä vetämällä. Siirtovaiheista muodostuu ikävä funktio, joka listaa sarakkeiden uuden järjestyksen ja funktiossa luetellaan kaikki senhetkiset sarakkeet. Jos poistat ensimmäisestä kyselystäsi sarakkeen ja kaikissa viittaavissa eli jatkavissa kyselyissä on tällainen funktio, kyseisen vaiheen suoritus epäonnistuu ja joudut muokkaamaan funktiota kaikissa jatkavissa kyselyissäsi.
Mitä enemmän teet kyselyitä, sitä paremmin osaat vältellä tällaisia sudenkuoppia, jotka aiheuttavat muokkaustilanteissa kohtuuttomasti vaivaa. Sarakkeiden järjestämisen voi sijoittaa ensimmäiseen kyselyyn, jolloin muutosta ei tarvitse tehdä kuin yhteen paikkaan.
<- Kyselyoppaan sisällysluettelo | |
<- Edellinen kyselyoppaan juttu | Seuraava kyselyoppaan juttu -> |