Tässä artikkelissa kerrotaan, miten voit käyttää ylimmän arvon kyselyjä ja summakyselyitä tietuejoukon viimeisimpien tai varhaisimpien päivämäärien etsimiseen. Näin voit vastata erilaisiin liiketoimintakysymyksiin, kuten siihen, milloin asiakas on viimeksi tehnyt tilauksen tai mitkä viisi neljäsosaa ovat olleet parhaiten myynnissä, kaupungin mukaan.
Artikkelin sisältö
Yleistä
Voit asettaa tiedot järjestykseen ja tarkastella parhaiten luokiteltuja kohteita käyttämällä ylintä arvokyselyä. Ylimmän arvon kysely on valintakysely, joka palauttaa määritetyn määrän tai prosenttiosuuden arvoista tulosten yläreunasta, esimerkiksi sivuston viisi suosituinta sivua. Voit käyttää ylimmän arvon kyselyä kaikenlaisia arvoja vastaan – niiden ei tarvitse olla lukuja.
Jos haluat ryhmitellä tiedot tai tehdä niistä yhteenvedon ennen niiden sijoittamista, sinun ei tarvitse käyttää ylintä arvokyselyä. Oletetaan esimerkiksi, että sinun on etsittävä tietyn päivämäärän myyntinumerot kullekin yrityksellesi. Tällöin kaupungeista tulee luokkia (kaupunkikohtaiset tiedot on etsittävä), joten käytät summakyselyä.
Kun etsit ylimmän arvon kyselyn avulla tietueet, jotka sisältävät taulukon tai tietueryhmän uusimmat tai varhaisimmat päivämäärät, voit vastata erilaisiin liiketoimintakysymyksiin, kuten seuraaviin:
-
Kuka on tehnyt eniten myyntiä viime aikoina?
-
Milloin asiakas on viimeksi tehnyt tilauksen?
-
Milloin seuraavat kolme syntymäpäivää ovat tiimissä?
Jos haluat tehdä ylimmän arvon kyselyn, aloita luomalla valintakysely. Lajittele sitten tiedot kysymyksesi mukaan – etsitkö ylä- vai alareunaa. Jos haluat ryhmityttää tiedot tai tehdä niistä yhteenvedon, muuta valintakysely summakyselyksi. Sen jälkeen voit käyttää koostefunktiota, kuten Maks . tai Min palauttaa suurimman tai pienimmän arvon, tai Ensimmäinen - tai Viimeinen-funktiota aikaisimman tai viimeisimmän päivämäärän palauttamiseksi.
Tässä artikkelissa oletetaan, että käyttämiesi päivämääräarvojen tietotyyppi on Päivämäärä ja aika. Jos päivämääräarvot ovat Teksti-kentässä, .
Kannattaa harkita suodattimen käyttämistä ylimmän arvokyselyn sijaan
Suodatin on yleensä parempi, jos mielessäsi on tietty päivämäärä. Jos haluat selvittää, kannattaako sinun luoda ylin arvokysely vai käyttää suodatinta, ota huomioon seuraavat seikat:
-
Jos haluat palauttaa kaikki tietueet, joissa päivämäärä vastaa päivämäärää, joka on ennen tiettyä päivämäärää tai sitä uudempi, käytä suodatinta. Jos esimerkiksi haluat nähdä huhtikuun ja heinäkuun välisten myyntien päivämäärät, käytä suodatinta.
-
Jos haluat palauttaa määritetyn määrän tietueita, joilla on kentän viimeisimmät tai viimeisimmät päivämäärät, etkä tiedä tarkkoja päivämääräarvoja tai niillä ei ole merkitystä, luot ylimmän arvokyselyn. Jos esimerkiksi haluat nähdä viisi parasta myyntineljännestä, käytä ylintä arvokyselyä.
Lisätietoja suodattimien luomisesta ja käyttämisestä on artikkelissa Suodattimen käyttäminen Access-tietokannan valittujen tietueiden tarkasteluun.
Esimerkkitietojen valmisteleminen seurattavaksi yhdessä esimerkkien kanssa
Tämän artikkelin vaiheissa käytetään seuraavien esimerkkitaulukoiden tietoja.
Työntekijät-taulukko
|
Sukunimi |
Etunimi |
Osoite |
Kaupunki |
CountryOrR-egion |
Syntymäaika |
Vuokrauspäivä |
|
Barnhill |
Josh |
1 Main St. |
New York |
USA |
05.2.1968 |
10.6.1994 |
|
Heloo |
Waleed |
52 1st St. |
Boston |
USA |
22. toukokuuta 1957 |
22.11.1996 |
|
Pica |
Guido |
3122 75th Ave. S.W |
Seattle |
USA |
11.11.1960 |
11.3.2000 |
|
Bagel |
Jean Philippe |
1 Contoso Blvd. |
Lontoo |
Iso-Britannia |
22.3.1964 |
22.6.1998 |
|
Hinta |
Juliaaninen |
Calle Smith 2 |
Mexico City |
Meksiko |
5.6.1972 |
05.1.2002 |
|
Hughes |
Christine |
3122 75th St. S. |
Seattle |
USA |
23.1.1970 |
23.4.1999 |
|
Riley |
Steve |
67 Big St. |
Tampa |
USA |
14.4.1964 |
14.10.2004 |
|
Birkby |
Dana |
2 Nenäinen pkwy |
Portland |
USA |
29.10.1959 |
29.3.1997 |
EventType-taulukko
|
TypeID |
Tapahtumatyyppi |
|
1 |
Tuotteen lanseeraus |
|
2 |
Yritysfunktio |
|
3 |
Yksityinen funktio |
|
4 |
Varainkeräys |
|
5 |
Messut |
|
6 |
Luento |
|
7 |
Konsertti |
|
8 |
Asettaa näytteille |
|
9 |
Katumessut |
Asiakkaat-taulukko
|
CustomerID |
Yritys |
Yhteyshenkilö |
|
1 |
Contoso, Ltd. Kuva |
Jonathan Haas |
|
2 |
Tailspin Toys |
Ellen Adams |
|
3 |
Fabrikam |
Carol Philips |
|
4 |
Wingtip Toys |
Lucio Iallo |
|
5 |
A. Tosiseikka |
Mandar Samant |
|
6 |
Adventure Works |
Brian Burke |
|
7 |
Design Institute |
Jaka Stele |
|
8 |
Taidekoulu |
Milena Duomanova |
Tapahtumat-taulukko
|
Tapahtumatunnus |
Tapahtumatyyppi |
Asiakas |
Tapahtuman päivämäärä |
Hinta |
|
1 |
Tuotteen lanseeraus |
Contoso, Ltd. |
4/14/2011 |
10<nbsp />000 $ |
|
2 |
Yritysfunktio |
Tailspin Toys |
4/21/2011 |
8 000 $ |
|
3 |
Messut |
Tailspin Toys |
1.5.2011 |
25 000 dollaria |
|
4 |
Asettaa näytteille |
Graphic Design Institute |
5/13/2011 |
4 500 € |
|
5 |
Messut |
Contoso, Ltd. |
5/14/2011 |
55 000 dollaria |
|
6 |
Konsertti |
Taidekoulu |
5/23/2011 |
12 000 € |
|
7 |
Tuotteen lanseeraus |
A. Tosiseikka |
6/1/2011 |
15 000 $ |
|
8 |
Tuotteen lanseeraus |
Wingtip Toys |
6/18/2011 |
21 000 € |
|
9 |
Varainkeräys |
Adventure Works |
6/22/2011 |
1 300 dollaria |
|
10 |
Luento |
Graphic Design Institute |
6/25/2011 |
2 450 dollaria |
|
11 |
Luento |
Contoso, Ltd. |
4.7.2011 |
3 800 dollaria |
|
12 |
Katumessut |
Graphic Design Institute |
4.7.2011 |
5 500 € |
Huomautus: Tämän osan vaiheissa oletetaan, että Asiakkaat- ja Tapahtumatyyppi-taulukot sijaitsevat yksi-moneet-yhteyksien yksi-moni-puolella Tapahtumat-taulukon kanssa. Tässä tapauksessa Tapahtumat-taulukko jakaa CustomerID- ja TypeID-kentät. Seuraavissa osissa kuvatut summakyselyt eivät toimi ilman näitä yhteyksiä.
Mallitietojen liittäminen Excel-laskentataulukoihin
-
Käynnistä Excel. Tyhjä työkirja avautuu.
-
Lisää laskentataulukko painamalla VAIHTO+F11 (tarvitset neljä).
-
Kopioi kunkin esimerkkitaulukon tiedot tyhjään laskentataulukkoon. Sisällytä sarakeotsikot (ensimmäinen rivi).
Tietokantataulukoiden luominen laskentataulukoista
-
Valitse tiedot ensimmäisestä laskentataulukosta, mukaan lukien sarakeotsikot.
-
Napsauta siirtymisruutua hiiren kakkospainikkeella ja valitse liitä.
-
Vahvista, että ensimmäisellä rivillä on sarakeotsikot, valitsemalla Kyllä .
-
Toista vaiheet 1–3 jokaiselle jäljellä olevalle laskentataulukolle.
Uusimman päivämäärän tai vähiten viimeisimmän päivämäärän etsiminen
Tämän osan vaiheissa käytetään esimerkkitietoja havainnollistamaan ylimmän arvokyselyn luontiprosessia.
Perusarvokyselyn luominen
-
Valitse Luo-välilehden Kyselyt-ryhmässä Kyselyn rakennenäkymä.
-
Kaksoisnapsauta Työntekijät-taulukkoa ja valitse sitten Sulje.
Jos käytät esimerkkitietoja, lisää Työntekijät-taulukko kyselyyn.
-
Lisää kentät, joita haluat käyttää kyselyssä, rakenneruudukkoon. Voit kaksoisnapsauttaa kutakin kenttää tai vetää ja pudottaa kentän kenttärivin tyhjään soluun.
Jos käytät esimerkkitaulukkoa, lisää Etunimi-, Sukunimi- ja Syntymäaika-kentät.
-
Napsauta Lajittele-riviä kentässä, joka sisältää ylimmät tai alimmat arvot (Syntymäpäivä-kenttä, jos käytät esimerkkitaulukkoa), ja valitse joko Nouseva tai Laskeva.
Laskeva lajittelujärjestys palauttaa viimeisimmän päivämäärän ja Nouseva lajittelujärjestys palauttaa varhaisimman päivämäärän.
Tärkeää: Lajittele-riville on määritettävä arvo vain kentille, jotka sisältävät päivämäärät. Jos määrität lajittelujärjestyksen toiselle kentälle, kysely ei palauta haluamiesi tulosten tuloksia.
-
Napsauta Rakenne-välilehdenTyökalut-ryhmässäKaikki-kohdan vieressä olevaa alanuolta ( Ylimmät arvot - luettelo) ja kirjoita haluamasi tietueiden määrä tai valitse haluamasi vaihtoehto luettelosta.
-
Suorita kysely ja näytä tulokset taulukkonäkymässä valitsemalla Suorita
. -
Tallenna kysely NextBirthDays-muodossa.
Tämäntyyppinen huippuarvokysely voi vastata peruskysymyksiin, kuten yrityksen vanhimpaan tai nuorimpaan henkilöön. Seuraavissa vaiheissa selitetään, miten lausekkeita ja muita ehtoja käytetään lisäämään kyselyn tehoa ja joustavuutta. Seuraavassa vaiheessa näkyvät ehdot palauttavat seuraavat kolme työntekijän syntymäpäivää.
Ehtojen lisääminen kyselyyn
Näissä vaiheissa käytetään edellisessä toimenpiteessä luotua kyselyä. Voit seurata eri ylimmän arvon kyselyä, kunhan se sisältää todellisia päivämäärä- ja aikatietoja, ei tekstiarvoja.
Vihje: Jos haluat ymmärtää paremmin, miten tämä kysely toimii, vaihda rakennenäkymän ja taulukkonäkymän välillä joka vaiheessa. Jos haluat nähdä varsinaisen kyselykoodin, siirry SQL-näkymään. Voit siirtyä näkymien välillä napsauttamalla kyselyn yläreunassa olevaa välilehteä hiiren kakkospainikkeella ja valitsemalla sitten haluamasi näkymän.
-
Napsauta siirtymisruudussa Hiiren kakkospainikkeella NextBirthDays-kyselyä ja valitse sitten Rakennenäkymä.
-
Kirjoita kyselyn rakenneruudukon BirthDate-sarakkeeseen seuraava:MonthBorn: DatePart("m",[BirthDate]).Tämä lauseke poimii kuukauden BirthDate-funktiosta DatePart-funktion avulla.
-
Kirjoita kyselyn rakenneruudukon seuraavaan sarakkeeseen seuraava:DayOfMonthBorn: DatePart("d",[BirthDate])Tämä lauseke poimii kuukauden päivän BirthDate-funktiosta DatePart-funktiolla .
-
Poista Valintaruudut Näytä-rivillä jokaiselta juuri kirjoittamaltasi lausekkeelta.
-
Napsauta kunkin lausekkeen Lajittele-riviä ja valitse sitten Nouseva.
-
Kirjoita Syntymäaika-sarakkeen Ehdot-riville seuraava lauseke:Kuukausi([Syntymäaika]) > Kuukausi(Päivämäärä()) TAI Kuukausi([Syntymäaika])= Kuukausi(Päivämäärä()) JA Päivä([Syntymäaika])>Päivä(Päivämäärä())Tämä lauseke toimii seuraavasti:
-
Month( [Birth Date]) > Month(Date()) määrittää, että kunkin työntekijän syntymäaika on tuleva kuukausi.
-
Kuukausi( [Syntymäaika])= Kuukausi(Päivämäärä()) Ja Päivä([Syntymäaika])>Päivä(Päivämäärä()) määrittää, että jos syntymäpäivä esiintyy kuluvana kuukautena, syntymäpäivä on kuluva päivä tai sen jälkeen.
Lyhyesti sanottuna tämä lauseke sulkee pois kaikki tietueet, joissa syntymäpäivä esiintyy tammikuun 1. päivän ja nykyisen päivämäärän välillä.
Vihje: Lisätietoja kyselyn ehtolausekkeista on artikkelissa Esimerkkejä kyselyn ehdoista.
-
-
Kirjoita Rakenne-välilehdenKyselyn asetukset - ryhmään 3Rivinvaihto-ruutuun .
-
Valitse Rakenne-välilehden Tulokset-ryhmästä Suorita
.
Huomautus: Omassa kyselyssäsi, joka käyttää omia tietojasi, saatat joskus nähdä enemmän tietueita kuin olet määrittänyt. Jos tiedot sisältävät useita tietueita, joilla on ylimpien arvojen joukossa oleva arvo, kysely palauttaa kaikki tällaiset tietueet, vaikka se tarkoittaisi useampien tietueiden palauttamista kuin halusit.
Tietueryhmien viimeisimpien päivämäärien tai vähiten viimeisimpien päivämäärien etsiminen
Summakyselyn avulla voit etsiä aikaisinta tai viimeisintä päivämäärää tietueille, jotka kuuluvat ryhmiin, kuten kaupungin mukaan ryhmiteltyihin tapahtumiin. Summakysely on valintakysely, joka käyttää koostefunktioita (kuten Ryhmittelyperuste, Min, Maks. määrä, Ensimmäinen ja Viimeinen) kunkin tuloskentän arvojen laskemiseen.
Sisällytä kenttä, jota haluat käyttää luokissa – ryhmitellä – ja kenttä, jossa on arvot, joista haluat tehdä yhteenvedon. Jos sisällytät muita tuloskenttiä , esimerkiksi niiden asiakkaiden nimet, jotka ryhmittelet tapahtumatyypin mukaan, kysely käyttää näitä kenttiä myös ryhmien muodostamiseen ja muuttaa tuloksia niin, että ne eivät vastaa alkuperäiseen kysymykseesi. Jos haluat otsikoida rivit käyttämällä muita kenttiä, luot lisäkyselyn, joka käyttää summakyselyä lähteenä, ja lisäät lisäkentät kyselyyn.
Vihje: Kyselyjen luominen vaiheittain on erittäin tehokas strategia edistyneempiin kysymyksiin vastaamista varten. Jos sinulla on vaikeuksia saada monimutkainen kysely toimimaan, mieti, voitko jakaa sen yksinkertaisempaan kyselysarjaan.
Summakyselyn luominen
Tässä ohjeessa käytetään Tapahtumat-esimerkkitaulukkoa ja EventType-esimerkkitaulukkoa vastaamaan tähän kysymykseen:
Milloin oli kunkin tapahtumatyypin viimeisin tapahtuma konsertteja lukuun ottamatta?
-
Valitse Luo-välilehden Kyselyt-ryhmässä Kyselyn rakennenäkymä.
-
Kaksoisnapsauta Tapahtumat- ja EventType-taulukoita. Jokainen taulukko näkyy kyselyn suunnittelutyökalun yläosassa.
-
Kaksoisnapsauta EventType-taulukon EventType-kenttää ja Tapahtumat-taulukon EventDate-kenttää ja lisää kentät kyselyn rakenneruudukkoon.
-
Kirjoita kyselyn rakenneruudukon EventType-kentänEhdot-riville<>Konsertti.
Vihje: Lisätietoja ehtolausekkeista on artikkelissa Esimerkkejä kyselyn ehdoista.
-
Valitse Rakenne-välilehden Näytä tai piilota -ryhmästä Summat.
-
Napsauta kyselyn rakenneruudukossa EventDate-kentän Summa-riviä ja valitse sitten Maks.
-
Valitse Rakenne-välilehden Tulokset-ryhmässä Näkymä ja valitse sitten SQL-näkymä.
-
Korvaa SQL-ikkunan SELECT-lauseen lopussa heti AS-avainsanan jälkeen MaxOfEventDateMostRecent-lausekkeella.
-
Tallenna kysely MostRecentEventByType-muodossa.
Toisen kyselyn luominen tietojen lisäämistä varten
Tässä ohjeessa käytetään edellisen menettelyn MostRecentEventByType-kyselyä tähän kysymykseen vastaamiseen:
Kuka oli asiakas kunkin tapahtumatyypin viimeisimmässä tapahtumassa?
-
Valitse Luo-välilehden Kyselyt-ryhmässä Kyselyn rakennenäkymä.
-
Kaksoisnapsauta Kyselyt-välilehdessä MostRecentEventByType-kyselyä.
-
Kaksoisnapsauta Taulukot-välilehdessä Tapahtumat-taulukkoa ja Asiakkaat-taulukkoa.
-
Kaksoisnapsauta kyselyn suunnittelussa seuraavia kenttiä:
-
Kaksoisnapsauta Tapahtumat-taulukossa EventType-kohtaa.
-
Kaksoisnapsauta MostRecentEventByType-kyselyssä MostRecent-kohtaa.
-
Kaksoisnapsauta Asiakkaat-taulukossa Yritys.
-
-
Valitse kyselyn rakenneruudukon Lajittele-rivillä EventType-sarakkeessa Nouseva.
-
Valitse Rakenne-välilehden Tulokset-ryhmästä Suorita.