V tem članku je razloženo, kako uporabite poizvedbe z najvišjimi vrednostmi in poizvedbe za povzetek za iskanje najnovejših ali najzgodnejših datumov v naboru zapisov. Na ta način lahko odgovorite na različna poslovna vprašanja, na primer, kdaj je stranka nazadnje oddala naročilo ali katera pet četrtletij je bilo najbolje za prodajo po mestih.
V tem članku
Pregled
S poizvedbo z najvišjimi vrednostmi lahko razvrstite podatke in pregledate elemente z najvišjimi vrednostmi. Poizvedba z največjo vrednostjo je poizvedba za izbiranje, ki vrne navedeno število ali odstotek vrednosti z vrha rezultatov, na primer pet najbolj priljubljenih strani na spletnem mestu. Poizvedbo z najvišjimi vrednostmi lahko uporabite za vse vrste vrednosti – ni treba, da so številke.
Če želite združiti ali povzeti podatke, preden jih razvrstite, vam ni treba uporabiti poizvedbe z najvišjimi vrednostmi. Recimo, da morate poiskati številke prodaje za dani datum za vsako mesto, v katerem deluje vaše podjetje. V tem primeru mesta postanejo kategorije (poiskati morate podatke na mesto), zato uporabite poizvedbo za povzetek.
Če za iskanje zapisov, ki vsebujejo najnovejše ali najzgodnejše datume v tabeli ali skupini zapisov, uporabite poizvedbo z najvišjimi vrednostmi, lahko odgovorite na različna poslovna vprašanja, na primer ta:
-
Kdo je zadnje čase največ prodajal?
-
Kdaj je stranka nazadnje od oddajla naročilo?
-
Kdaj bodo v ekipi naslednji trije rojstni dnevi?
Če želite ustvariti poizvedbo z najvišjo vrednostjo, najprej ustvarite poizvedbo za izbiranje. Nato razvrstite podatke glede na svoje vprašanje – ne glede na to, ali iščete zgornji ali spodnji del. Če želite združiti ali povzeti podatke, poizvedbo za izbiranje spremenite v poizvedbo za povzetek. Nato lahko uporabite združevalno funkcijo, na primer Max ali Min, da vrnete najvišjo ali najnižjo vrednost, ali Prvi ali Zadnji, da vrnete najzgodnejši ali najnovejši datum.
V tem članku je predvideno, da imajo datumske vrednosti, ki jih uporabljate, vrsto podatkov »Datum/čas«. Če so datumske vrednosti v polju z besedilom, .
Priporočamo vam, da namesto poizvedbe z najvišjimi vrednostmi uporabite filter
Filter je običajno boljši, če imate v mislih določen datum. Če želite ugotoviti, ali morate ustvariti poizvedbo za zgornje vrednosti ali uporabiti filter, upoštevajte to:
-
Če želite vrniti vse zapise, pri katerih se datum ujema, pred določenim datumom ali pozneje, uporabite filter. Če si želite na primer ogledati datume prodaje med aprilom in julijem, uporabite filter.
-
Če želite vrniti določeno količino zapisov z najnovejšimi ali najnovejšimi datumi v polju in ne poznate točnega datuma vrednosti ali pa niso pomembne, ustvarite poizvedbo za zgornje vrednosti. Če si želite na primer ogledati pet najboljših prodajnih četrtletj, uporabite poizvedbo z najvišjimi vrednostmi.
Če želite več informacij o ustvarjanju in uporabi filtrov, si oglejte članek Uporaba filtra za ogled zapisov v Accessovi zbirki podatkov.
Priprava vzorčnih podatkov za spremljanje skupaj s primeri
V navodilih v tem članku so podatki iz teh vzorčnih tabel.
Tabela »Zaposleni«
|
Priimek |
Ime |
Naslov |
Mesto |
Država Alir egion |
Datum rojstva |
Datum najema |
|
Cajhen |
Janko |
Glavna ulica 45 |
Ljubljana |
USA |
05. februar 1968 |
10-Jun-1994 |
|
Heloo ( |
Waleed |
Prva ulica 52 |
Kranj |
USA |
22. maj 1957 |
22. nov 1996 |
|
Potokar |
Guido |
Cesta XIV. divizije 122 |
Celje |
USA |
11. nov 1960 |
11. marec 2000 |
|
Biga |
Jean Philippe |
Cesta Svobode 43 |
Ljubljana |
UK |
22. marec 1964 |
22-Jun-1998 |
|
Cena |
Julian |
Novakova ulica 2 |
Maribor |
Mehika |
05-Jun-1972 |
05. januar 2002 |
|
Hughes |
Christine |
3122 75. st. |
Seattle |
USA |
23. januar 1970 |
23. april 1999 |
|
Novak |
Franc |
Velika ulica 67 |
Novo mesto |
USA |
14. april 1964 |
14. oktober 2004 |
|
Birkby |
Dana |
2 Nosač Pkwy |
Ljubljana |
USA |
29. oktober 1959 |
29. marec 1997 |
Tabela »EventType«
|
Idtipka |
Vrsta dogodka |
|
1 |
Zagon izdelka |
|
2 |
Poslovna funkcija |
|
3 |
Funkcija Private |
|
4 |
Fund Raiser |
|
5 |
Trade Show |
|
6 |
Predavanje |
|
7 |
Koncert |
|
8 |
Kažejo |
|
9 |
Ulični sejem |
Tabela »Stranke«
|
IDStranke |
Podjetje |
Stik |
|
1 |
Contoso, d.o.o. Grafika |
Jonathan Haas |
|
2 |
Igrače Tailspin |
Ellen Adams |
|
3 |
Fabrikam |
Carol Philips |
|
4 |
Igrače Wingtip |
Lucio Iallo |
|
5 |
A. Datum |
Mandar Samant |
|
6 |
Adventure Works |
Brian Burke |
|
7 |
Inštitut za oblikovanje |
Jaka Stele |
|
8 |
Šola likovne umetnosti |
Milena Duomanova |
Tabela »Dogodki«
|
ID dogodka |
Vrsta dogodka |
Stranka |
Datum dogodka |
Cena |
|
1 |
Zagon izdelka |
Contoso, d.o.o. |
4/14/2011 |
10.000 € |
|
2 |
Poslovna funkcija |
Igrače Tailspin |
4/21/2011 |
8.000 € |
|
3 |
Trade Show |
Igrače Tailspin |
1. 5. 2011 |
25.000 $ |
|
4 |
Kažejo |
Inštitut za grafično oblikovanje |
5/13/2011 |
$ 4.500 |
|
5 |
Trade Show |
Contoso, d.o.o. |
5/14/2011 |
55.000 $ |
|
6 |
Koncert |
Šola likovne umetnosti |
5/23/2011 |
12.000 € |
|
7 |
Zagon izdelka |
A. Datum |
6/1/2011 |
15.000 € |
|
8 |
Zagon izdelka |
Igrače Wingtip |
6/18/2011 |
21.000 EUR |
|
9 |
Fund Raiser |
Adventure Works |
6/22/2011 |
1.300 $ |
|
10 |
Predavanje |
Inštitut za grafično oblikovanje |
6/25/2011 |
2.450 $ |
|
11 |
Predavanje |
Contoso, d.o.o. |
04.07.2011 |
3.800 $ |
|
12 |
Ulični sejem |
Inštitut za grafično oblikovanje |
04.07.2011 |
5.500 EUR |
Opomba: Koraki v tem razdelku predvidevajo, da sta tabeli »Stranke« in »Vrsta dogodka« na strani »ena« relacij »ena proti mnogo« s tabelo »Dogodki«. V tem primeru je v tabeli »Dogodki« v skupni rabi polji »CUSTOMERID« in »TypeID«. Poizvedbe za povzetek, opisane v naslednjih razdelkih, ne bodo delovale brez teh relacij.
Lepljenje vzorčnih podatkov v Excelove delovne liste
-
Zaženite Excel. Odpre se prazen delovni zvezek.
-
Pritisnite SHIFT+F11, da vstavite delovni list (potrebujete štiri).
-
Kopirajte podatke iz vsake vzorčne tabele na prazen delovni list. Vključite glave stolpcev (prvo vrstico).
Ustvarjanje tabel zbirke podatkov iz delovnih listov
-
Izberite podatke s prvega delovnega lista, vključno z naslovi stolpcev.
-
Z desno tipko miške kliknite podokno za krmarjenje in nato kliknite Prilepi.
-
Kliknite Da, da potrdite, da prva vrstica vsebuje glave stolpcev.
-
Ponovite korake od 1 do 3 za vsak preostali delovni list.
Iskanje najnovejšega ali najmanj nedavnega datuma
Koraki v tem razdelku uporabljajo vzorčne podatke za ponazoritev procesa ustvarjanja poizvedbe za najvišje vrednosti.
Ustvarjanje poizvedbe za osnovne vrednosti
-
Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.
-
Dvokliknite tabelo Zaposleni in nato kliknite Zapri.
Če uporabite vzorčne podatke, v poizvedbo dodajte tabelo »Zaposleni«.
-
Polja, ki jih želite uporabiti v poizvedbi, dodajte v mrežo načrta. Vsako polje lahko dvokliknete ali pa povlečete in spustite vsako polje v prazno celico v vrstici Polje.
Če uporabite vzorčno tabelo, dodajte polja Ime, Priimek in Rojstni datum.
-
V polju, v katerem so zgornje ali spodnje vrednosti (polje »Rojstni datum«, če uporabite vzorčno tabelo), kliknite vrstico Razvrsti in izberite Naraščajoče aliPadajoče.
Padajoči vrstni red razvrščanja vrne najnovejši datum, naraščajoči vrstni red pa vrne najzgodnejši datum.
Pomembno: Vrednost v vrstici Razvrsti morate nastaviti le za polja z datumi. Če določite vrstni red razvrščanja za drugo polje, poizvedba ne vrne želenih rezultatov.
-
Na zavihku Načrt v skupini Orodja kliknite puščico dol ob možnosti Vse (seznam Najvišje vrednosti) in vnesite število zapisov, ki si jih želite ogledati, ali pa izberite možnost na seznamu.
-
Kliknite Zaženi
, da zaženete poizvedbo in prikažete rezultate v pogledu podatkovnega lista. -
Shranite poizvedbo kot NextBirthDays.
Vidite lahko, da lahko ta vrsta poizvedbe z najvišjimi vrednostmi odgovori na osnovna vprašanja, na primer kdo je najstarejši ali najmlajši v podjetju. V naslednjih korakih je razloženo, kako uporabiti izraze in druge pogoje za dodajanje moči in prilagodljivosti za poizvedbo. Pogoji, prikazani v naslednjem koraku, vrnejo naslednje tri rojstne dneve zaposlenih.
Dodajanje pogojev v poizvedbo
Ta navodila uporabljajo poizvedbo, ustvarjeno s prejšnjim postopkom. Če poizvedba vsebuje dejanske podatke o datumu/času in ne besedilnih vrednosti, lahko to poizvedbo spremljate skupaj z drugo poizvedbo z najvišjimi vrednostmi.
Namig: Če želite bolje razumeti delovanje te poizvedbe, pri vsakem koraku preklapljajte med pogledom načrta in pogledom podatkovnega lista. Če si želite ogledati dejansko kodo poizvedbe, preklopite v pogled SQL. Če želite preklopiti med pogledi, na vrhu poizvedbe z desno tipko miške kliknite zavihek in nato kliknite želeni pogled.
-
V podoknu za krmarjenje z desno tipko miške kliknite poizvedbo NextBirthDays in nato kliknite Pogled načrta.
-
V mreži načrta poizvedbe v stolpec desno od možnosti RojstniDatum vnesite to:MonthBorn: DatePart("m",[RojstniDatum]).Ta izraz izvleče mesec iz funkcije BirthDate s funkcijo DatePart .
-
V naslednji stolpec mreže načrta poizvedbe vnesite to:DayOfMonthBorn: DatePart("d",[BirthDate])Ta izraz izvleče dan v mesecu iz datuma Rojstva s funkcijo DatePart.
-
Počistite potrditvena polja v vrstici Pokaži za vsak izraz, ki ste ga pravkar vnesli.
-
Kliknite vrstico Razvrsti za vsak izraz in nato izberite Naraščajoče.
-
V vrstico Pogoji stolpca Rojstni datum vnesite ta izraz:Month([Rojstni datum]) > Month(Date()) OR Month([Rojstni datum])= Month(Date()) AND Day([Rojstni datum])>Day(Date())Ta izraz naredi to:
-
Month( [Rojstni datum]) > Month(Date()) določa, da je datum rojstva vsakega zaposlenega v prihodnjem mesecu.
-
The Month([Birth Date])= Month(Date()) And Day([Birth Date])>Day(Date()) določa, da če je datum rojstva v trenutnem mesecu, rojstni dan pade na ali po trenutnem dnevu.
Na kratko, ta izraz izključuje vse zapise, pri katerih se rojstni dan zgodi med 1. januarjem in trenutnim datumom.
Namig: Če želite več primerov izrazov pogojev poizvedbe, si oglejte članek Primeri pogojev poizvedbe.
-
-
Na zavihku Načrt v skupini Nastavitev poizvedbe vnesite 3v polje Vračilo.
-
Na zavihku Načrt v skupini Rezultati kliknite Zaženi
.
Opomba: V svoji poizvedbi, ki uporablja vaše podatke, je včasih prikazanih več zapisov, kot ste navedli. Če podatki vsebujejo več zapisov, ki so v skupni rabi z vrednostjo, ki je med najvišjimi vrednostmi, bo poizvedba vrnila vse takšne zapise, tudi če to pomeni, da boste vrnili več zapisov, kot ste želeli.
Iskanje najbolj ali najmanj nedavnih datumov za skupine zapisov
S poizvedbo za povzetek poiščete najzgodnejše ali najnovejše datume za zapise, ki sodijo v skupine, na primer dogodke, združene po mestu. Poizvedba za povzetek je poizvedba za izbiranje, ki uporablja združevalne funkcije (kot so Združi po, M in, Maks, Štetje, Prviin Zadnji) za izračun vrednosti za vsako izhodno polje.
Vključite polje, ki ga želite uporabiti za kategorije – če želite združiti po – in polje z vrednostmi, ki jih želite povzeti. Če vključite druga izhodna polja – na primer imena strank, ko jih združite po vrsti dogodka – poizvedba uporabi ta polja tudi za ustvarjanje skupin, spreminjanje rezultatov tako, da ne bodo odgovorile na izvirno vprašanje. Če želite označiti vrstice z drugimi polji, ustvarite dodatno poizvedbo, ki uporabi poizvedbo za povzetek kot vir, in dodajte dodatna polja v to poizvedbo.
Namig: Ustvarjanje poizvedb po korakih je zelo učinkovita strategija za odgovarjanje na naprednejše vprašanja. Če imate težave pri uporabi zapletene poizvedbe, razmislite, ali jo lahko razdelite v niz preprostejših poizvedb.
Ustvarjanje poizvedbe za povzetek
Ta postopek uporablja vzorčno tabelo Dogodki in vzorčno tabelo EventType, da odgovori na to vprašanje:
Kdaj je bil zadnji dogodek posamezne vrste dogodka, razen koncertov?
-
Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.
-
Dvokliknite tabeli Dogodki in Vrsta dogodka. Vsaka tabela se prikaže v zgornjem razdelku načrtovalca poizvedbe.
-
Dvokliknite polje EventType tabele EventType in polje Datum Dogodka iz tabele Dogodki, da dodate polja v mrežo načrta poizvedbe.
-
V mreži načrta poizvedbe v vrstico Pogoji polja EventType vnesite<> Koncert.
Namig: Če želite več primerov izrazov s pogoji, si oglejte članek Primeri pogojev poizvedbe.
-
Na zavihku Načrt v skupini Pokaži/skrij kliknite Skupaj.
-
V mreži načrta poizvedbe kliknite vrstico Skupaj polja »Datum Dogodka« in nato kliknite Maks.
-
Na zavihku Načrt v skupini Rezultati kliknite Pogled in nato še Pogled SQL.
-
V oknu SQL na koncu stavka SELECT, tik za ključno besedo AS, zamenjajte MaxOfEventDate z MostRecent.
-
Shranite poizvedbo kot MostRecentEventByType.
Ustvarjanje druge poizvedbe za dodajanje podatkov
Ta postopek uporablja poizvedbo MostRecentEventByType iz prejšnjega postopka, da odgovori na to vprašanje:
Kdo je bil stranka na najnovejšem dogodku posamezne vrste dogodka?
-
Na zavihku Ustvari v skupini Poizvedbe kliknite Načrt poizvedbe.
-
Na zavihku Poizvedbe dvokliknite poizvedbo MostRecentEventByType.
-
Na zavihku Tabele dvokliknite tabelo Dogodki in tabelo Stranke.
-
V načrtovalniku poizvedb dvokliknite ta polja:
-
V tabeli Dogodki dvokliknite Vrsta dogodka.
-
V poizvedbi MostRecentEventByType dvokliknite MostRecent.
-
V tabeli Stranke dvokliknite Podjetje.
-
-
V mreži načrta poizvedbe v vrstici Razvrsti stolpca EventType izberite Naraščajoče.
-
Na zavihku Načrt v skupini Rezultati kliknite Zaženi.