Šajā rakstā paskaidrots, kā izmantot augstāko vērtību vaicājumus un kopsummu vaicājumus, lai atrastu jaunākos vai agrākos datumus ierakstu kopā. Tas var palīdzēt atbildēt uz dažādiem biznesa jautājumiem, piemēram, kad klients pēdējoreiz ir veicis pasūtījumu, vai arī pieci ceturkšņi ir vispiemērotākie pārdošanai pa pilsētām.
Šajā rakstā
Pārskats
Jūs varat klasificēt datus un pārskatīt visaugstāk novērtētos vienumus, izmantojot augstāko vērtību vaicājumu. Augšējas vērtības vaicājums ir atlases vaicājums, kas atgriež noteiktu skaitli vai procentuālo vērtību no rezultātu augšdaļas, piemēram, piecas populārākās tīmekļa vietnes lapas. Varat izmantot augstāko vērtību vaicājumu attiecībā uz jebkāda veida vērtībām — viņiem nav jābūt skaitļiem.
Ja vēlaties grupēt vai summēt datus pirms to ranga, jums nav jāizmanto augstāko vērtību vaicājums. Piemēram, pieņemsim, ka ir jāatrod pārdošanas numuri konkrētam datumam katrai pilsētai, kurā darbojas jūsu uzņēmums. Šajā gadījumā pilsētas kļūst par kategorijām (ir jāatrod dati katrā pilsētā), tāpēc izmantojiet kopsummu vaicājumu.
Ja izmantojat augstāko vērtību vaicājumu, lai atrastu ierakstus, kuros ir jaunākie vai agrākie datumi tabulā vai ierakstu grupā, varat atbildēt uz dažādiem biznesa jautājumiem, piemēram, šādiem:
-
Kas pēdējā laikā ir veicis pārdošanas apjomu?
-
Kad klients pēdējoreiz ir paveicis pasūtījumu?
-
Kad darba grupai ir nākamās trīs dzimšanas dienas?
Lai veiktu augstāko vērtību vaicājumu, sāciet ar atlases vaicājuma izveidi. Pēc tam kārtojiet datus atbilstoši savam jautājumam — neatkarīgi no tā, vai meklējat augšējo vai apakšējo daļu. Ja vēlaties grupēt vai summēt datus, pārvērtiet atlases vaicājumu par kopsummu vaicājumu. Pēc tam varat izmantot funkciju apkopošana, piemēram, Max vai min , lai atgrieztu augstāko vai mazāko vērtību, vai pirmo vai pēdējo datumu.
Šajā rakstā ir pieņemts, ka datuma vērtībām, ko izmantojat, ir datu tips Date/Time. Ja datuma vērtības ir teksta laukā,.
Izmantojiet filtru, nevis augstāko vērtību vaicājumu
Filtrs parasti ir labāks, ja jums prātā ir konkrēts datums. Lai noteiktu, vai ir jāizveido augstāko vērtību vaicājums vai jālieto filtrs, apsveriet tālāk norādītās darbības.
-
Ja vēlaties atgriezt visus ierakstus, kuros datuma atbilstība ir pirms vai pēc noteikta datuma, izmantojiet filtru. Piemēram, lai skatītu pārdošanas datumus no aprīļa līdz jūlijam, lietojiet filtru.
-
Ja vēlaties atgriezt noteiktu ierakstu skaitu, kuros ir pēdējie vai pēdējie datumi laukā, un jūs nezināt precīzas datumu vērtības, vai arī tām nav nozīmes, izveidojiet augstāko vērtību vaicājumu. Piemēram, lai skatītu labākos pārdošanas ceturkšņus, izmantojiet augstāko vērtību vaicājumu.
Papildinformāciju par filtru izveidi un izmantošanu skatiet rakstā filtra lietošana, lai skatītu atlasītu ierakstus Access datu bāzē.
Datu paraugu sagatavošana, lai sekotu līdzi piemēriem
Šajā rakstā aprakstītās darbības izmantojiet datus tālāk norādītajās tabulu paraugos.
Tabula darbinieki
LastName |
Vārds |
Address |
Pilsēta |
CountryOrR egion |
Dzimšanas datums |
Darbāpieņemšanasdatums |
Balodis |
Andris |
Rožu iela 1 |
Sigulda |
USA |
05-Feb-1968 |
10-jūn-1994 |
Liepa |
Waleed |
Pļavas iela 42 |
Līvbērze |
USA |
22. maijs-1957 |
22-Nov-1996 |
Kalns |
Guido |
3122 75 procentile Ave. SW |
Dagda |
USA |
11-nov-1960 |
11-Mar-2000 |
Fūrmanis |
Žans Filips |
Cēsu iela 7 |
Pāvilosta |
UK |
22-Mar-1964 |
22-jūn-1998 |
Cena |
Jūlija kalendāra |
Pāļu iela 10-5 |
Tukums |
Meksika |
05-jūn-1972 |
05-Jan-2002 |
Gaile |
Jensens |
3122 75 procentile St. S. |
Sietla |
USA |
23-Jan-1970 |
23-Apr-1999 |
Siliņš |
Raimonds |
Lielais laukums 13/1 |
Umurga |
USA |
14-Apr-1964 |
14-Okt-2004 |
Kausa |
Daina |
2 deguna 123 |
Portlenda |
USA |
29-okt-1959 |
29-Mar-1997 |
Tabula EventType
TypeID |
Notikuma Tips |
1 |
Produkta izlaišana |
2 |
Uzņēmuma funkcija |
3 |
Funkcija Private |
4 |
Līdzekļu atspere |
5 |
Prezentācijas demonstrēšana |
6 |
Lekciju |
7 |
Koncerts |
8 |
Radīt |
9 |
Ielu gadatirgus |
Tabula Pircēji
Klienta_ID |
Uzņēmums |
Kontaktpersona |
1 |
Contoso, Ltd. Grafikas |
Eriks Andersens |
2 |
Labās rotaļlietas |
Ellen Adams |
3 |
Fabrikam |
Carol Philips |
4 |
Wingtip rotaļlietas |
Lucio Dembovskis |
5 |
A. Datum |
Ilmārs Rozentāls |
6 |
Adventure Works |
Braiens Andersens |
7 |
Noformējuma institūts |
Jaka stele |
8 |
Tēlotājas mākslas skola |
Milena Pintāne |
Tabula Events
EventID |
Notikuma Tips |
Klients |
Notikuma datums |
Cena |
1 |
Produkta izlaišana |
Contoso, Ltd. |
4/14/2011 |
10 000 EUR |
2 |
Uzņēmuma funkcija |
Labās rotaļlietas |
4/21/2011 |
8000 € |
3 |
Prezentācijas demonstrēšana |
Labās rotaļlietas |
1.5.2011. |
$25 000 |
4 |
Radīt |
Grafiskā noformējuma institūts |
5/13/2011 |
4500 € |
5 |
Prezentācijas demonstrēšana |
Contoso, Ltd. |
5/14/2011 |
$55 000 |
6 |
Koncerts |
Tēlotājas mākslas skola |
5/23/2011 |
12 000 € |
7 |
Produkta izlaišana |
A. Datum |
6/1/2011 |
15 000 € |
8 |
Produkta izlaišana |
Wingtip rotaļlietas |
6/18/2011 |
21 000 € |
9 |
Līdzekļu atspere |
Adventure Works |
6/22/2011 |
$1 300 |
10 |
Lekciju |
Grafiskā noformējuma institūts |
6/25/2011 |
$2 450 |
11 |
Lekciju |
Contoso, Ltd. |
7/4/2011 |
$3 800 |
12 |
Ielu gadatirgus |
Grafiskā noformējuma institūts |
7/4/2011 |
5 500 € |
Piezīme.: Šajā sadaļā aprakstītās darbības pieņem, ka tabulas Customers un Event tips atrodas relācijas viens pret daudziem pusē "viens", izmantojot tabulu Events. Šajā gadījumā tabulā Events ir kopīgoti lauki CustomerID un TypeID. Kopsummu vaicājumi, kas aprakstīti nākamajās sadaļās, nedarbosies bez šīm relācijām.
Datu paraugu ielīmēšana Excel darblapās
-
Startējiet programmu Excel. Tiek atvērta tukša darbgrāmata.
-
Nospiediet taustiņu kombināciju SHIFT + F11, lai ievietotu darblapu (jums vajadzēs četras).
-
Kopējiet datus no katras parauga tabulas tukšā darblapā. Iekļaujiet kolonnu virsrakstus (pirmo rindu).
Datu bāzes tabulu izveide no darblapām
-
Atlasiet datus pirmajā darblapā, iekļaujot kolonnu virsrakstus.
-
Ar peles labo pogu noklikšķiniet uz navigācijas rūts un pēc tam noklikšķiniet uz Ielīmēt.
-
Noklikšķiniet uz Jā , lai apstiprinātu, ka pirmajā rindā ir kolonnu virsraksti.
-
Atkārtojiet 1-3 darbības katrai atlikušajai darblapai.
Lielākā vai mazākā datuma atrašana
Šajā sadaļā aprakstītās darbības izmanto datu paraugu, lai ilustrētu pirmo vērtību vaicājuma izveides procesu.
Pamata augstāko vērtību vaicājuma izveide
-
Cilnes Izveide grupā Vaicājumi noklikšķiniet uz Vaicājuma noformējums.
-
Veiciet dubultklikšķi uz tabulas Employees un pēc tam noklikšķiniet uz Tālāk.
Ja izmantojat parauga datus, pievienojiet vaicājumam tabulu Employees.
-
Pievienojiet laukus, kurus vēlaties izmantot vaicājumā noformējuma režģī. Varat veikt dubultklikšķi uz katra lauka vai vilkt un nomest katru lauku rindā lauks tukšā šūnā.
Ja izmantojat tabulas paraugu, pievienojiet laukus vārds, uzvārds un dzimšanas datums.
-
Laukā, kurā ir jūsu augstākās vai zemākās vērtības (lauks Birth Date, ja izmantojat tabulas paraugu), noklikšķiniet uz rindas Kārtot un atlasiet augošā secībā vai dilstošā secībā.
Dilstošā kārtošanas secība atgriež pēdējo datumu, bet augošā secībā kārtošanas secība atgriež agrāko datumu.
Svarīgi!: Vērtība rindā Kārtot ir jāiestata tikai laukiem, kuros ir datumi. Ja norādāt cita lauka kārtošanas secību, vaicājums neatdod vēlamos rezultātus.
-
Cilnes noformējums grupā Rīki noklikšķiniet uz lejupvērstās bultiņas blakus Visi (saraksts augšējās vērtības ) un ievadiet ierakstu skaitu, ko vēlaties redzēt, vai atlasiet sarakstā esošo opciju.
-
Noklikšķiniet uz palaist , lai izpildītu vaicājumu un rādītu rezultātus datu lapas skatā.
-
Saglabājiet vaicājumu kā NextBirthDays.
Varat redzēt, ka šis augstāko vērtību vaicājuma tips var atbildēt uz pamata jautājumiem, piemēram, kurš ir vecākā vai jaunākā persona uzņēmumā. Nākamajās darbībās ir paskaidrots, kā izmantot izteiksmes un citus kritērijus, lai pievienotu varu un elastīgumu vaicājumam. Nākamajā darbībā parādītie kritēriji tiek atjaunoti nākamajās trīs darbinieku dzimšanas dienās.
Kritēriju pievienošana vaicājumam
Veicot šīs darbības, tiek izmantots iepriekšējā procedūrā izveidotais vaicājums. Varat sekot kopā ar citu augstāko vērtību vaicājumu, ja tajā ir ietverti faktiskie datuma/laika dati, nevis teksta vērtības.
Padoms.: Ja vēlaties labāk saprast, kā darbojas šis vaicājums, katrā darbībā pārslēdzieties starp noformējuma skatu un datu lapas skatu. Ja vēlaties skatīt faktisko vaicājuma kodu, pārslēdzieties uz SQL skatu. Lai pārslēgtu skatus, ar peles labo pogu noklikšķiniet uz cilnes vaicājuma augšdaļā un pēc tam noklikšķiniet uz vēlamā skata.
-
Navigācijas rūtī ar peles labo pogu noklikšķiniet uz NextBirthDays vaicājuma un pēc tam noklikšķiniet uz noformējuma skats.
-
Vaicājuma noformējuma režģī kolonnā pa labi no BirthDate ievadiet šādu tekstu:
MonthBorn: DatePart ("m", [BirthDate]).
Šī izteiksme izvelk mēnesi, kas ir BirthDate, izmantojot funkciju DatePart . -
Nākamajā vaicājuma noformējuma režģa kolonnā ievadiet šādu tekstu:
DayOfMonthBorn: DatePart ("d", [BirthDate])
Šī izteiksme izvelk mēneša dienu no dzimšanas datuma, izmantojot funkciju DatePart . -
Notīriet izvēles rūtiņas rindā Rādīt katrai no divām tikko ievadītajām izteiksmēm.
-
Noklikšķiniet uz katras izteiksmes rindas Kārtot un pēc tam atlasiet augošā secībā.
-
Kolonnas dzimšanas datums rindā kritēriji ierakstiet šādu izteiksmi:
month ([Birth Date]) > month (Date ()) vai month ([Birth Date]) = month (Date ()) un Day ([Birth Date]) >diena (datums ())
Šī izteiksme veic šādas darbības:-
Mēnesis ( [dzimšanas datums]) > mēnesis (datums ()) norāda, ka katra darbinieka dzimšanas datums kļūst par nākamo mēnesi.
-
Mēnesis([dzimšanas datums]) = month (Date ()) and Day ([Birth date]) >Day (Date ()) norāda, ka, ja dzimšanas datums tiek rādīts pašreizējā mēnesī, dzimšanas diena ir uz vai pēc pašreizējās dienas.
Īsumā šajā izteiksmē nav ietverti ieraksti, kuru dzimšanas diena ir starp 1. janvāri un pašreizējo datumu.
Padoms.: Papildinformāciju par vaicājumu kritēriju izteiksmju piemēriem skatiet rakstā vaicājumu kritēriju piemēri.
-
-
Cilnes noformējums grupā vaicājuma iestatīšana lodziņā atdošana ierakstiet 3 .
-
Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt .
Piezīme.: Savā vaicājumā, izmantojot savus datus, dažkārt var būt redzami vairāk ierakstu, nekā norādījāt. Ja datos ir vairāki ieraksti, kuros ir iekļauta vērtība, kas ir augšējo vērtību daļa, vaicājums atgriež visus šos ierakstus pat tad, ja tas nozīmē, ka atgriežaties vairāk ierakstu, nekā jūs vēlējāties.
Pēdējo vai mazāko pēdējo datumu atrašana ierakstu grupām
Izmantojiet kopsummu vaicājumu, lai atrastu senākos vai vēlākos datumus ierakstiem, kas ietilpst grupās, piemēram, notikumus, kas grupēti pēc pilsētas. Kopsummu vaicājums ir atlases vaicājums, kas izmanto apkopošanas funkcijas (piemēram, Grupēt pēc, M, Max, Count, Firstun Last) , lai aprēķinātu vērtības katram izvades laukam.
Iekļaujiet lauku, kuru vēlaties izmantot kategorijām, lai grupētu pēc, un lauku ar vērtībām, kuras vēlaties summēt. Ja iekļaujat citus izvades laukus — piemēram, klientu vārdus pēc grupēšanas pēc notikuma veida — vaicājums arī izmantos šos laukus, lai padarītu grupas, mainot rezultātus, lai tie neatbildētu uz jūsu sākotnējo jautājumu. Lai iezīmētu rindas, izmantojot citus laukus, izveidojiet papildu vaicājumu, kas izmanto kopsummu vaicājumu kā avotu, un pievienojiet šim vaicājumam papildu laukus.
Padoms.: Vaicājumu veidošanas darbības ir ļoti efektīva stratēģija, lai atbildētu uz sarežģītākiem jautājumiem. Ja rodas problēmas ar sarežģītu vaicājumu darba veikšanai, apsveriet iespēju to sadalīt vienkāršāku vaicājumu sērijā.
Summēšanas vaicājuma izveide
Veicot šīs darbības, tiek izmantota tabulas Events Sample un EventType parauga tabula , lai atbildētu uz šo jautājumu:
Kad bija jaunākais notikums katram notikuma tipam, izņemot koncertus?
-
Cilnes Izveide grupā Vaicājumi noklikšķiniet uz Vaicājuma noformējums.
-
Veiciet dubultklikšķi uz tabulām notikumi un EventType.
Katra tabula tiek rādīta vaicājumu noformētāja augšpusē. -
Veiciet dubultklikšķi uz tabulas EventType lauka EventType un lauku EventDate no tabulas Events, lai šos laukus pievienotu vaicājuma noformējuma režģim.
-
Vaicājuma noformējuma režģī lauka EventType rindā kritēriji ievadiet <>koncerts.
Padoms.: Papildu kritēriju izteiksmju piemērus skatiet rakstā vaicājumu kritēriju piemēri.
-
Cilnes noformējums grupā Rādīt/paslēpt noklikšķiniet uz kopsummas.
-
Vaicājuma noformējuma režģī noklikšķiniet uz lauka EventDate kopsummas rindas un pēc tam noklikšķiniet uz Maksimums.
-
Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Skats un pēc tam uz SQL skats.
-
SQL loga klauzulas SELECT beigās uzreiz pēc atslēgvārda aizstājiet MaxOfEventDate ar MostRecent.
-
Saglabājiet vaicājumu kā MostRecentEventByType.
Otrā vaicājuma izveide papildu datu pievienošanai
Šī procedūra izmanto MostRecentEventByType vaicājumu no iepriekšējās procedūras, lai atbildētu uz šo jautājumu:
Kas bija klients pēdējā notikuma tipa notikumā?
-
Cilnes Izveide grupā Vaicājumi noklikšķiniet uz Vaicājuma noformējums.
-
Cilnē vaicājumi veiciet dubultklikšķi uz MostRecentEventByType vaicājuma.
-
Cilnē tabulas veiciet dubultklikšķi uz tabulas Events un tabulu Customers.
-
Vaicājumu noformētājā veiciet dubultklikšķi uz šiem laukiem:
-
Tabulā Events veiciet dubultklikšķi uz EventType.
-
MostRecentEventByType vaicājumā veiciet dubultklikšķi uz MostRecent.
-
Tabulā Klienti veiciet dubultklikšķi uz uzņēmums.
-
-
Vaicājuma noformējuma režģa kolonnas EventType rindā Kārtot atlasiet augošā secībā.
-
Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.