Prístup k funkciám zoskupenia. Použitie skupinových operácií v dotazoch. Vypočítané dopyty

Údaje sú vo všeobecnosti jednoduchšie analyzovať, ak sú rozdelené do skupín. Napríklad správa, ktorá zoskupí tržby podľa regiónov, môže pomôcť identifikovať trendy, ktoré by inak mohli zostať nepovšimnuté. Navyše umiestnením súčtov (napríklad súčtov alebo priemerov) na koniec každej skupiny v prehľade nahradíte mnoho operácií kalkulačky.

Access uľahčuje prácu na zoskupených správach. Môžete vytvoriť jednoduchú zostavu so zoskupením pomocou sprievodcu zostavou, pridať zoskupenie alebo zoradenie do už vytvorenej zostavy a zmeniť už definované parametre zoskupovania alebo triedenia.

Poznámka: Tento článok sa nevzťahuje na webové aplikácie Access, nový typ databázy, ktorý je vytvorený v Accesse a publikovaný na webe.

V tomto článku

Vytvorte súhrnnú správu so zoskupením alebo zoradením

Aj keď vytvárate zoskupené prehľady prvýkrát, môžete jednoducho vytvoriť jednoduchý prehľad podľa týchto krokov:

Vytvorenie zoskupenej správy pomocou sprievodcu zostavou

Sprievodca hlásením vám kladie otázky a na základe odpovedí vytvorí správu. Jeden z nich uvádza polia, podľa ktorých chcete v zostave zoskupiť. Po vytvorení prehľadu ho môžete použiť v hotová forma alebo zmeniť podľa svojich potrieb. Pred spustením sprievodcu zostavou sa rozhodnite pre výber zdroja údajov.

Spustenie sprievodcu hlásením

Zoskupovanie záznamov pomocou Sprievodcu hlásením

Zoskupenie vám umožňuje organizovať záznamy podľa skupín (napríklad podľa regiónu alebo predajcu). Vnorené skupiny uľahčujú definovanie vzťahov medzi skupinami a rýchle nájdenie údajov, ktoré potrebujete. Zoskupenie môžete použiť aj na získanie súhrnných údajov, ako sú súčty alebo percentá.

Keď do zostavy zahrniete viac tabuliek, sprievodca preskúma vzťah medzi nimi a určí možný spôsob zobraziť údaje.


Zoradiť a zhrnúť záznamy

Záznamy môžete zoradiť vzostupne alebo zostupne podľa 1-4 polí.


Pomocou navigačných tlačidiel v spodnej časti oblasti zobrazenia si môžete postupne prezerať stránky zostavy alebo prejsť na ktorúkoľvek z týchto stránok. Stlačte jedno z navigačných tlačidiel alebo zadajte požadované číslo stránky do poľa na zadanie čísla strany a potom stlačte kláves Enter.

V režime ukážky môžete priblížiť zobrazenie a zobraziť detaily, alebo oddialiť zobrazenie, kde sú údaje na stránke. Kliknite raz, keď kurzor myši ukazuje na zostavu. Opätovným kliknutím zrušíte efekt zväčšenia. Môžete tiež použiť ovládanie priblíženia na stavovom riadku.

Pridajte alebo zmeňte zoskupenie a zoradenie v existujúcom prehľade

Ak už prehľad máte a potrebujete doň pridať triedenie alebo zoskupenie, alebo v ňom potrebujete zmeniť podmienky triedenia alebo zoskupovania, táto sekcia vám s tým pomôže.

Sčítanie zoskupení, triedenie a súčty

Operácie triedenia, zoskupovania a sčítavania môžete vykonávať kliknutím pravým tlačidlom myši na polia v režime rozloženia a následným výberom požadovanej operácie z kontextovej ponuky. Ak chcete vstúpiť do režimu rozloženia, kliknite pravým tlačidlom myši na zostavu na navigačnej table a vyberte položku Režim rozloženia.

Poznámka: Aj keď pokyny v tejto časti výslovne nehovoria o ríši, odporúčame vám ju otvoriť a sledovať zmeny v nej počas práce. Oboznámite sa s rozsahom akcií akcie lepšie Zoskupovanie, triedenie a súčty, pomocou neho môžete správu ďalej opraviť. Na zobrazenie panela Zoskupovanie, triedenie a súčty:

    v záložke Konštruktér v skupine Zoskupenie a súčty kliknite Zoskupovanie a triedenie.

Zoradiť podľa jedného poľa

    Kliknite pravým tlačidlom myši na ľubovoľnú hodnotu v poli, podľa ktorého chcete zoradiť.

    V kontextovom menu vyberte požadovanú možnosť zoradenia. Ak chcete napríklad zoradiť textové pole vzostupne, kliknite na Zoradenie od A do Z... Ak chcete zoradiť číselné pole zostupne, kliknite na tlačidlo Zoradiť zostupne.

Access zoradí zostavu podľa vášho výberu. Ak oblasť Zoskupovanie, triedenie a súčty je už otvorený, môžete si všimnúť, že do poľa bol pridaný nový riadok Triedenie.

Zoradenie podľa viacerých polí

Poznámka: Keď použijete triedenie kliknutím na pole v režime rozloženia, môžete zoradiť iba jedno pole naraz. Použitie zoradenia na iné pole odstráni triedenie podľa prvého poľa. To sa líši od spôsobu, akým sa triedenie vykonáva vo formulároch, kde môžete nastaviť rôzne poradia zoradenia tak, že postupne kliknete na každé pole a vyberiete požadované poradie zoradenia. Ak chcete vytvoriť úrovne zoradenia pre viac polí, pozrite si časť.

Zoskupenie podľa poľa

    Kliknite pravým tlačidlom myši na ľubovoľnú hodnotu v poli, podľa ktorého chcete zoskupiť.

    V kontextovom menu zvoľte Zoskupovanie.

Access pridá úroveň zoskupenia a vytvorí hlavičku skupiny. Ak oblasť Zoskupovanie, triedenie a súčty je už otvorený, uvidí sa, že do poľa pribudol nový riadok Zoskupovanie.

Sčítanie do poľa

Táto možnosť vám umožňuje vypočítať súčet, priemer, množstvo alebo iné štatistické polia. Celkový súčet sa pridá na koniec zostavy a súčty skupín sa pridajú do skupín zostáv.

    Kliknite pravým tlačidlom myši na ľubovoľnú hodnotu v poli, pre ktoré chcete vypočítať súčet.

    Kliknite Výsledok.

    Vyberte operáciu, ktorú chcete vykonať: Sum, Priemerný, Počet záznamov(na spočítanie všetkých záznamov), Počet hodnôt(počítať iba záznamy s hodnotou tohto poľa), Maximálne, Minimálne, Štandardná odchýlka alebo Rozptyl.

Access pridá do hlavičky zostavy ovládací prvok, napríklad vypočítaný text, ktorý sumarizuje celkový súčet. Ak zostava obsahuje úrovne zoskupenia, Access pridá hlavičky a päty skupín (ak nie sú k dispozícii) a do každej hlavičky a päty umiestni súčet.

Poznámka: Súčty môžete tiež pridať kliknutím na pole, pomocou ktorého ich chcete vypočítať, a na karte Konštruktér v skupine Zoskupenie a súčty kliknutím Výsledky.

Pridajte zoskupenie, triedenie a celkový súčet pomocou oblasti zoskupovania, triedenia a súčtov

Práca s oblasťou Zoskupovanie, triedenie a súčty poskytuje maximálnu flexibilitu, keď potrebujete v zostave pridať alebo zmeniť skupiny, zoradiť objednávky alebo súčty. S režimom rozloženia sa pracuje najpohodlnejšie, pretože je oveľa jednoduchšie vidieť, ako vykonané zmeny ovplyvňujú zobrazenie údajov.

Zobrazte oblasť zoradenia, skupiny a súčty

    V záložke Konštruktér v skupine Zoskupenie a súčty kliknite Zoskupovanie a triedenie.

    Access zobrazí oblasť Zoskupovanie, triedenie a súčty.

Ak chcete pridať úroveň zoskupenia alebo zoradenia, kliknite na Pridať zoskupenie alebo Pridať triedenie.

Do oblasti Zoskupovanie, triedenie a súčty pridá sa nový riadok a zobrazí sa zoznam dostupných polí.

Môžete kliknúť na jeden z týchto názvov polí, alebo výraz pod zoznam polí zadajte výraz. Hneď ako kliknete na pole alebo zadáte výraz, Access do zostavy pridá úroveň zoskupenia. V režime rozloženia sa ihneď zobrazí poradie zoradenia alebo skupiny.

Ďalšie informácie o vytváraní a používaní výrazov nájdete v článku Vytváranie výrazov.

Poznámky:

    Po zadaní viacerých úrovní zoradenia alebo zoskupenia bude možno potrebné navigovať v oblasti nadol Zoradenie, zoskupenie a súčty aby ste videli tlačidlá Pridať zoskupenie a Pridať triedenie.

    V zostave môžete priradiť až desať úrovní triedenia a zoskupovania.

Zmeňte možnosti zoskupenia

Každá úroveň zoskupenia alebo triedenia obsahuje sadu možností, ktoré môžete použiť na dosiahnutie požadovaných výsledkov.


Poradie triedenia. Poradie zoradenia môžete zmeniť kliknutím na príslušný rozbaľovací zoznam a výberom požadovanej možnosti.

Interval zoskupovania. Toto nastavenie určuje, ako budú záznamy zoskupené. Textové polia môžu byť napríklad zoskupené podľa prvého znaku (ak začínajú na „A“, „B“ atď.). Polia dátumu je možné zoskupiť podľa dní, týždňov, mesiacov, štvrťrokov alebo môžete zadať vlastný interval.

Výsledky. Ak chcete pridať súčty, kliknite na túto možnosť. Môžete pridať súčty do viacerých polí a pre jedno pole môžete vypočítať viacero typov súčtov.

    Celkom podľa poľa a vyberte pole, pre ktoré chcete vypočítať súčty.

    Kliknite na šípku rozbaľovacej ponuky Typ a zvoľte metódu výpočtu.

    Prosím vyber Zobraziť celkový súčet pridať celkový súčet na koniec zostavy (jej hlavička).

    Prosím vyber Zobraziť súčty skupín a celkový súčet pridať do päty skupiny ovládací prvok, ktorý vypočíta percentuálny podiel z celkového súčtu pre každú skupinu.

    Prosím vyber Zobraziť v hlavičke skupiny alebo Zobraziť v hlavičke skupiny na zobrazenie celkového súčtu tam, kde chcete.

Po výbere všetkých možností pre pole môžete postup zopakovať výberom iného poľa z rozbaľovacieho zoznamu Celkom podľa poľa alebo kliknite mimo vyskakovacie okno Výsledky uzavrieť to.

Názov. Umožňuje zmeniť názov poľa, podľa ktorého sa vypočítava súčet. Používa sa pre nadpis stĺpca a pre súhrnné polia v hlavičkách a zápätiach.

Ak chcete pridať alebo zmeniť názov:

    kliknite na modrý text za titulkom s titulom;

    zobrazí sa dialógové okno Mierka;

    v dialógovom okne zadajte nový názov a potom kliknite na OK.

S / bez nadpisovej sekcie. S týmto nastavením budete môcť pridať alebo odstrániť sekciu hlavičky, ktorá je pred každou skupinou. Keď pridáte sekciu hlavičky, Access umiestni zoskupovacie pole do hlavičky. Pred odstránením sekcie hlavičky, ktorá obsahuje iné ovládacie prvky ako pole zoskupenia, vás Access požiada o potvrdenie.

S / bez poznámky. Túto možnosť použite na pridanie alebo odstránenie sekcie hlavičky a päty za každou skupinou. Pred odstránením sekcie hlavičky a päty, ktorá obsahuje ovládacie prvky, vás Access požiada o potvrdenie.

Nerozbitná reprezentácia skupiny. Tento parameter určuje, ako sú skupiny usporiadané na stránke pri tlači zostavy. Skupiny možno budete chcieť umiestniť čo najbližšie k sebe, aby sa dali na stránke ľahko prezerať. To však zvyčajne zvyšuje spotrebu papiera pri tlači správy, pretože väčšina stránok bude mať v spodnej časti prázdne miesto.

    Nenechávajte skupinu na jednej stránke. Túto možnosť použite, ak vám nie je jedno zoskupovanie zlomov stránok. Napríklad 10 položiek v skupine 30 položiek môže byť v spodnej časti jednej stránky a zvyšných 20 v hornej časti nasledujúcej stránky.

    Ponechajte skupinu na jednej stránke. Táto možnosť pomáha minimalizovať počet zlomov stránky v skupine. Ak sa skupina nezmestí do zostávajúceho priestoru na jednej stránke, Access ponechá toto miesto prázdne a skupinu umiestni na ďalšiu stránku. Veľké skupiny môžu stále zahŕňať viacero stránok, ale táto možnosť minimalizuje tieto výskyty.

    Názov a prvý príspevok ponechajte na tej istej stránke. Uistite sa, že záhlavie skupiny nie je vytlačené oddelene od samotnej skupiny v spodnej časti stránky. Ak Access určí, že nie je dostatok miesta na vytlačenie aspoň jedného riadka za hlavičkou, skupina vytlačí na ďalšej strane.

Zmena priority zoskupovania a triedenia

Ak chcete zmeniť prioritu, kliknite na riadok v oblasti Zoskupovanie, triedenie a súčty a potom šípku nahor alebo nadol napravo od riadka.

Odstránenie úrovní zoskupovania a triedenia

Ak chcete odstrániť úroveň, v oblasti Zoskupovanie, triedenie a súčty vyberte riadok, ktorý chcete odstrániť, a potom stlačte kláves DELETE alebo Vymazať napravo od riadka. Keď odstránite úroveň zoskupenia a hlavička alebo päta skupiny obsahuje pole zoskupenia, Access ho presunie do sekcie podrobností zostavy. Všetky ostatné ovládacie prvky budú odstránené.

Vytvorte súhrnný prehľad (žiadne podrobnosti záznamu)

Ak chcete zobraziť iba súčty (údaje v riadkoch hlavičky a päty), na karte Konštruktér v skupine Zoskupenie a súčty kliknite Skryť detaily... Tým sa skryjú záznamy najbližšej najnižšej úrovne zoskupenia a súčty sa budú zobrazovať kompaktnejšie. Aj keď sú položky skryté, ovládacie prvky v skrytej sekcii nebudú odstránené. Kliknite Skryť detaily opäť vrátiť podrobné riadky do zostavy.

Dotaz umožňuje zhrnúť údaje patriace do rovnakých skupín: vypočítať ich počet, súčet, priemer, maximálnu a minimálnu hodnotu.

Cvičenie: vytvorte dotaz, ktorý vypočíta celkový počet položiek a celkový objem prijatého tovaru pre každú faktúru.

Zvážte údaje v tabuľke " Príjem tovaru "(obr. 13). Tabuľka má rovnaké hodnoty stĺpcov Číslo faktúry je možné opakovať mnohokrát (podľa toho, koľko tovaru bolo prijatých na základe faktúry). Je potrebné vytvoriť požiadavku, ktorá bude sumovať množstvo tovaru za faktúry s rovnakým číslom.

Pre lepšie pochopenie toho, aký by mal byť výsledok v dotaze na obr. 13, vpravo, v zátvorkách sú označené záznamy, pre ktoré sa čísla faktúr zhodujú a vypočíta sa celkový počet položiek a celkový objem.

Ryža. 13. Stôl na príjem tovaru

Pracovný postup:

1. V Navigačné okno vybraný Kategória objektu - Typ objektu, a v sekcii Filtrovať podľa skupín spínač je nainštalovaný Dopyt... Na stužke v sekcii Stvorenie v skupine Dopyt tlačidlo je stlačené Dotazník.

2. V dialógovom okne Pridávanie tabuliek, sa vyberú tabuľky, údaje, z ktorých chcete v dotaze zobrazovať (“ Príjem tovaru ") a tlačidlo je stlačené Pridať.

3. Na obrazovke sa zobrazí okno návrhu dotazu, ktoré pozostáva z dvoch častí: horná časť zobrazuje rozloženie tabuľky a dolná časť zobrazuje časť na definovanie parametrov dotazu.

Polia, ktorých hodnoty by sa mali zobraziť v dôsledku vykonania dotazu, sa pridajú do sekcie parametrov dotazu (obr. 14). (Pole môžete do dotazu pridať dvojitým kliknutím na jeho názov v zodpovedajúcej tabuľke umiestnenej v hornej časti okna dotazu).

5. Na implementáciu dotazu v režime Konštruktor pridajte ďalší riadok Skupinové operácie (obr. 14) kliknutím na tlačidlo na paneli s nástrojmi.

Pod poľom Číslo nákladného listu v rade Skupinové operácie tím je vybraný Zoskupovanie(faktúry s rovnakým číslom sú zoskupené), pod poľom Kód produktu v rade Skupinové operácie tím je vybraný Gróf(množstvo) a pod poľom Množstvo - príkaz Súčet ( suma sa sčíta). Operácie použité v dotaze na zoskupenie sú popísané v tabuľke 2.

Výsledok vykonania dotazu je znázornený na obr. 15. (porovnajte výsledok s údajmi na obr. 13).


Tabuľka 2. Skupinové operácie

Názov operácie

Význam

Zhrnutie

Priemer

Minimálna hodnota

Maximálna hodnota

Počet položiek v stĺpci

Posledný prvok

Prvý prvok

Podmienka

Označuje booleovský výraz

Výraz

Označuje, že pole je vypočítané

Dotazy vám umožňujú nielen vyberať záznamy z prístupových tabuliek, ale aj počítať rôzne štatistické parametre. Môžete napríklad spočítať celkový počet kontaktov a zobraziť dátumy prvého a posledného kontaktu s každým z ľudí zahrnutých v tabuľke Kontakty. Ak chcete zostaviť takýto dotaz v režime návrhu, postupujte nasledovne.

1. V okne databázy kliknite na tlačidlo Dopyt.

2. Dvakrát kliknite na ikonu Vytvorte dotaz v režime návrhu.

3. V dialógovom okne, ktoré sa otvorí (obr. 17.6), vyberte riadok Kontakty.

4. Kliknutím na tlačidlo Pridať pridajte vybratú tabuľku do horného panela návrhu dotazu.

5. Zvýraznite položku Zoznam a znova kliknite na tlačidlo Pridať.

6. Kliknutím na tlačidlo Zavrieť zatvorte dialógové okno. V návrhovom okne sa zobrazia zoznamy polí dvoch tabuliek prepojených prepojovacou čiarou.

7. Kliknite na tlačidlo Skupinové operácie panely nástrojov. Vo formulári žiadosti sa zobrazí ďalší riadok Skupinová prevádzka ktorý vám umožňuje vykonávať štatistické operácie s hodnotami konkrétnych polí.

Ryža. 17.6. Pridanie tabuľky

8. Potiahnite pole Priezvisko do bunky Lúka prvý stĺpec konštruktora.

9. Potiahnite pole do rovnakej bunky v druhom stĺpci názov tabuľky Kontakty.

10. V treťom, štvrtom a piatom stĺpci návrhu dotazu presuňte pole dátum Zoznam tabuliek (obr. 17.7).

11. V rozbaľovacom zozname buniek Skupinová prevádzka v treťom stĺpci formulára žiadosti vyberte Min.

12. V tej istej bunke vo štvrtom stĺpci vyberte Mach.

13. V piatom stĺpci nastavte Počet hromadných operácií. Skupinové operácie zostrojeného dotazu spracujú všetky záznamy tabuľky Zoznam zodpovedajúce konkrétnej osobe z tabuľky Kontakty a namiesto samotných údajov tabuľky Zoznam zobrazia iba hodnotu hodnoty vypočítanej podľa určitého vzorca v zodpovedajúcom poli výsledku dotazu. Dostupné skupinové operácie sú uvedené v tabuľke. 17.1.

TABUĽKA 17.1. Skupinové operácie

názov Funkcia
PodmienkaRežim nastavenia podmienky výberu pre pole, ktoré však nie je zoskupené. Access takéto pole automaticky skryje.
VýrazVypočítané pole, ktorého hodnota sa vypočíta pomocou zložitého vzorca
Zoskupiť podľaPole definujúce skupinu záznamov, pomocou ktorých sa vypočítavajú štatistické parametre. Jedna skupina obsahuje všetky záznamy, pre ktoré sú hodnoty poľa Zoskupiť podľa rovnaké.
PoslednýPosledná hodnota v skupine
najprvPrvá hodnota v skupine
VarVariácia hodnôt poľa
StDevŠtandardná odchýlka nulových hodnôt od priemeru
GrófPočet záznamov zodpovedajúci nule, ktorý neobsahuje hodnotu Null
MachMaximálna hodnota
MinMinimálna hodnota
PriemPriemerná hodnota poľa
SumSúčet hodnôt polí vo všetkých záznamoch

Poznámka Pretože piate pole dotazu počíta počet záznamov, je možné do bunky Pole tohto stĺpca umiestniť akékoľvek pole tabuľky Zoznam.

14. Kliknite na tlačidlo vyhliadka na dokončenie žiadosti. Zobrazí sa tabuľka s piatimi stĺpcami. Prvé dva stĺpce obsahujú mená a priezviská osôb. Podľa nich sa vykonáva zoskupovanie, to znamená, že sa vykonáva výpočet hodnôt ostatných polí dotazov pre záznamy v tabuľke Zoznam, ktoré sú spárované s jednou osobou. Ako bolo uvedené vyššie, korešpondencia medzi kontaktom z tabuľky Zoznam a osobou z tabuľky Kontakty je určená poliami Contact_code, ktoré slúžia na prepojenie týchto dvoch tabuliek. V treťom a štvrtom stĺpci dotazu sa zobrazuje dátum prvého (minimálna funkcia) a posledného (maximálna funkcia) kontaktu s touto osobou. Piaty stĺpec obsahuje počet zodpovedajúcich záznamov v tabuľke Zoznam (funkcia Počet). táto osoba, to znamená počet kontaktov s ním. Jedinou nevýhodou zostaveného dotazu sú nezrozumiteľné názvy stĺpcov. Upravme ich.

15. Kliknutím na tlačidlo vyhliadka vráťte sa do konštruktora dotazov.

16. V bunke poľa tretieho stĺpca nahraďte názov Dátum textom Dátum prvého kontaktu: Dátum. Pravá strana tohto výrazu, umiestnená napravo od dvojbodky, stále určuje názov poľa a ľavá strana uvádza názov stĺpca výsledku dotazu. Preto môže byť ľubovoľnému stĺpcu v dotaze priradený ľubovoľný názov.

17. Do poľa vo štvrtom stĺpci zadajte Dátum posledného kontaktu: Dátum.

18. V prvom riadku piateho stĺpca návrhu dotazu zadajte Počet kontaktov: dátum.

Poznámka Táto technika bohužiaľ nie je vhodná na zmenu názvu poľa, ktorého hodnota sa nepočíta, ale prenáša z tabuľky. To znamená, že nebude možné takto premenovať pole Názov.

19. Znova kliknite na tlačidlo. vyhliadka.

20. Zatvorte žiadosť.

21. Ak chcete uložiť zmeny v štruktúre, kliknite na tlačidlo Áno.

22. V dialógovom okne Konzervácia zadajte názov Final Query a kliknite na tlačidlo OK.

Dnes sa podrobnejšie pozrieme na dotazy v Accesse.


Dopyty, ako už iste viete, sú potrebné na prácu s údajmi v tabuľkách.
Ak chcete vytvoriť žiadosť ...
1) ... v okne databázy otvorte položku Žiadosti
2) ... a vytvorte dotaz pomocou konštruktora.



NEPOUŽÍVAJTE na otázky Od pána, pretože vám umožňuje zadávať iba najjednoduchšie dotazy a ich prerobenie na pokročilejšie je ešte ťažšie ako vytváranie dotazu v konštruktore od začiatku.

Filtrovanie prázdnych riadkov

Keď sú prepojené viaceré tabuľky, môžu sa objaviť prázdne riadky.



Prečo sa to deje?
Faktom je, že v našej tabuľke tbPerson sú spolu s majiteľmi psov zaznamenaní aj rozhodcovia (Petrovskaya, Yelets, Tereshchuk). Rozhodcovia nemajú právo priviesť svojich psov na výstavu, preto sú v riadkoch s ich menami prázdne bunky s menami psov.
Existujú dva spôsoby, ako odstrániť prázdne riadky.
1. Stanovte podmienku významu mena psa Nie je Null, t.j. NEPrázdňujte.



2. Alebo zmeňte typ spojenia medzi tabuľkami v oblasti tabuliek: na komunikačnej linke, ktorá dáva nepresný výsledok, zavolajte kontextové menu a zmeňte Skombinujte možnosti.



Otázka znie: aké nastavenia musíte zmeniť v dialógovom okne možností zlúčenia?

Vypočítané dopyty

Doteraz sme vybrali iba záznamy pre rôzne podmienky. Ale Access vám umožňuje nielen prezerať údaje zaznamenané v tabuľkách, ale tiež vykonávať VÝPOČTY: podľa dátumu narodenia určiť vek; z mena, priezviska a priezviska vytvoriť priezvisko s iniciálkami; určiť celkovú nákupnú cenu na základe jednotkovej ceny výrobku a jeho množstva; do dátumu vydania knihy v knižnici určiť výšku pokuty za dlh a mnoho ďalších. Na výpočty sa používajú vstavané funkcie (podobné tým v programe Excel).


Najjednoduchšia operácia je pridanie riadkov... Napíšte do bunky výraz na zobrazenie takejto frázy: majiteľ z mesta mesto .
Za týmto účelom napíšte do horného riadka nového stĺpca oblasti podmienok: + „z mesta“ +.



Názvy polí sú napísané v hranatých zátvorkách, fragmenty riadkov sú v úvodzovkách a medzi nimi sú znamienka sčítania.


Výrazy pre výpočty sú zapísané v hornom riadku ( Lúka) oblasť podmienok. Doteraz sme do spodných riadkov zapísali podmienky ( Podmienky výberu).


Aby sme sa nenechali zmiasť: v hornom riadku napíšeme, ČO sa má zobraziť na obrazovke, a potom (v spodnej časti) - ZA AKÉ PODMIENKY.


Cvičenie: Napíšte výraz, aby sa v jednej bunke zobrazilo priezvisko majiteľa a v zátvorkách mesto, v ktorom žije. Páči sa ti to: Ivanov (Moskva)... Mesto a priezvisko by mali byť nahradené z tabuľky.

Tvorca výrazov

Na uľahčenie úpravy výrazov slúži špeciálny editor - „Expression Builder“. Vyzerá to takto:



Hovorí sa mu to pomocou kontextového menu: kurzor umiestnite na bunku, do ktorej napíšete výraz:



V nástroji na tvorbu výrazov môžete vyberať funkcie z knižnice:



a údaje z tabuliek (môžete použiť IBA tabuľky, ktoré sa používajú v tomto dopyte a zobrazujú sa v oblasti údajov):



Keď dvakrát kliknete na názov alebo funkciu poľa v zozname, Access často vloží slovo „výraz“, aby naznačil, že na toto miesto môžete vložiť ďalšie funkcie a názvy polí. Nezabudnite odstrániť ďalšie slová „výraz“!


Zoznámime sa s textom a dočasnými funkciami, ako aj s podmieneným operátorom Iif (podmienka; if-true; if-false).


Text funkcie umožňujú prevod premenných reťazcov:
Vľavo („Ivanov“; 2) = „Yves“ ponecháva n ľavých znakov
LCase ("Ivanov") = Ivanov robí všetky písmena malé
InStr (1; "Ivanov"; "ale") = 4 nájde podreťazec (tretí argument) v reťazci (druhý argument) a rovná sa polohe (od začiatku) podreťazca v reťazci.
Len ("Ivanov") = 6 zobrazuje počet znakov v riadku
StrComp ("Ivanov"; "Petrov") = -1 porovnáva dva reťazce: ak sú rovnaké, vráti 0
iné…


Dočasné vám umožní pracovať s dočasnými premennými:
Mesiac ( # 12.04.2007 #) = 4
Rok ( # 12.04.2007 #) = 2007
Deň ( # 12.04.2007 #) = 12.
Teraz () = 28. 4. 2008 14:15:42 (aktuálny dátum a čas)
Dátum () = 28.04.2008 (dnešný dátum)
DateDiff ("d"; # 12.04.2007 #; # 28.04.2007 #) = 16 zistí rozdiel medzi dvoma dátumami ("d" - v dňoch, "ww" - v týždňoch, "m" - v mesiacoch, "rrrr " - v rokoch atď.)
iné…


hlavolam podmienené výrazy procesu:
Iif (<=1; «щенок»; «взрослый») аналог функции ЕСЛИ из Ecxel.
iné…


Cvičenie: napíšte výraz, ktorý robí priezvisko s iniciálkami z priezviska, mena a priezviska. Ivanov Ivan Ivanovič -> Ivanov I.I.
Cvičenie
Cvičenie
Dodatok: Existujú dva spôsoby, ako vypočítať vek psa, jeden presnejší a druhý menej:
1) odpočítajte rok narodenia psa od bežného roku;
2) pomocou funkcie DateDiff vypočítajte, koľko dní uplynulo od narodenia do dnešného dňa. Na jednu z úloh použite jednu metódu a na druhú druhú.

Parametrické dotazy

Keď bežíš požiadavka s parametrom, na rozdiel od bežného dotazu na výber, sa nevykoná okamžite, ale najskôr vás v dialógovom okne požiada o objasnenie niektorých podmienok výberu. Chceme napríklad dostať kompletné informácie o psovi s určitým turnajovým číslom.



Táto požiadavka je usporiadaná takto:



Na mieste, kde podmienka výberu obvykle stojí, je teraz otázka (v hranatých zátvorkách), ktorá bude položená používateľovi. A uhádnete, že odpoveď používateľa bude do tejto bunky nahradená ako výberové kritérium.


Cvičenie: Vytvorte dotaz, ktorý bude uvádzať všetky psy podľa priezviska majiteľa, čo je bezplatný parameter.

Zoskupené dotazy

S pomocou tvorcov výrazov môžeme vykonávať operácie na jednom riadku: pridávať hodnoty do buniek, transformovať údaje.
Ale čo keď potrebujeme spracovať niekoľko riadkov naraz: vypočítať súčet bodov, nájsť počet riadkov s rovnakou hodnotou daného poľa?
Na tento účel sa používa zoskupovanie (je veľmi podobné sumarizácii v programe Excel).


Spočítajme si, koľko psov z každého plemena prišlo na výstavu. Za týmto účelom prenesieme do oblasti podmienok iba dve polia: prezývku a plemeno - a zavoláme na ďalšiu linku skupinové operácie(prostredníctvom kontextového menu v oblasti podmienok):



Teraz zoskupíme psy podľa plemena a spočítame počet rôznych prezývok v každej skupine:



Zhrňme výsledky výstavy a vypočítajme priemerné skóre pre exteriér priemerná známka za tréning a ich množstvo.


Pridajte tabuľku s odhadmi (tbMarks) do oblasti tabuľky. Zoskupíme skóre podľa turnajového čísla psa a spomedzi operácií skupiny zvolíme priemernú hodnotu priemer (z angličtiny. priemer- priemerný).


Spustite dotaz a v režime zobrazenia si všimnite, že stĺpce so skupinovými operáciami majú dvojitý názov (operácia + názov poľa). To je pre nás užitočné pri výpočte počtu bodov.





Hodnoty môžete tiež zaokrúhliť na jedno desatinné miesto: Okrúhle (+; 1)


Cvičenie: Zistite, ktorý pes vyvolal najkontroverznejšie názory rozhodcov. Za týmto účelom odpočítajte minimum od maximálneho skóre.

Zmeňte požiadavky, vymazania, doplnky

V prvej lekcii sme už hovorili o skutočnosti, že dopyty umožňujú nielen prezeranie údajov z tabuliek, ale aj úpravu záznamov: pridávanie nových, mazanie, zmeny. Typ žiadosti je možné zmeniť pomocou zoznamu požiadaviek na paneli s nástrojmi.



Prevádzkovateľ databázy dostal v predvečer výstavy nové informácie:
1) Pes Desi je chorý a nebude sa môcť zúčastniť výstavy;
2) omylom bol Guardian, ktorý je v skutočnosti anglickým setrom, uvedený ako írsky seter;
3) majiteľka Migunovej sa prihlásila na výstavu iného svojho psa (prezývka: Harry, plemeno: Gordon Setter, pohlavie: m, dátum narodenia: 15.09.07).


Začnime s úpravou databázy.
1) Odstráňte záznam z Desi.
Vytvorte požiadavku quDelDog. Typ žiadosti je určený na vymazanie. So zmenou typu žiadosti sa čiastočne mení aj rozsah podmienok. Objavila sa nová bunka Odstraňuje sa... Pod ním označujete podmienku, podľa ktorej chcete vybrať záznamy, ktoré sa majú odstrániť. Aj keď zadáte podmienku výberu pre jedno pole, záznam ALL sa vymaže.



Po kliknutí na „výkričník“ sa na obrazovke zobrazí správa, že záznam bol odstránený. Teraz otvorené tbDog tabuľka a uistite sa, že v ňom Desi nie je.


2) V prípade Guardiana zmeňte írskeho setra na anglického.
Vytvorte žiadosť quUpdateDog. Typ požiadavky - na aktualizáciu. Nájdeme Guardiána a aktualizujeme jeho plemeno.



Sprístupniť tbDog tabuľka a uistite sa, že plemeno Guardien je anglický seter.


3) Pridajte záznam s Harrym.
Vytvorte dotaz quAddDog. Typ požiadavky - pridať. Dopyty na pridanie majú jednu zvláštnosť: oblasť tabuľky nezobrazuje tabuľky, KDE pridáte záznam, ale KDE získate údaje (ak je to potrebné). Cieľovú tabuľku (do ktorej sa pridávajú záznamy) zadáte v dialógovom okne, ktoré sa zobrazí hneď po nastavení typu dotazu (na pridanie):



Keďže údaje z iných tabuliek neberieme, ale tvoríme nový vstup, potom musí byť oblasť tabuľky PRÁZDNY! (nemali by existovať žiadne tabuľky). V kondičnej oblasti v línii Lúka napíšete ČO pridáte (nová hodnota pre každé pole) a na riadok Pridáva sa KDE (názvy polí):



Sprístupniť tbDog tabuľka a uistite sa, že sa v ňom objaví Harry!

Dotazovací jazyk SQL

Keď kliknete na výkričník, požiadavka sa vykoná. Takto to vyzerá pre začiatočníka.
Profesionáli vedia, že v skutočnosti sa v tomto okamihu vykonáva príkaz v špeciálnom dotazovacom jazyku SQL. Faktom je, že Access nie je jediným systémom na správu databáz (DBMS). Možno ste už na internete počuli o takých DBMS ako MySQL, FreeBSD ??? Access jednoducho ponúka veľmi užívateľsky prívetivé rozhranie pre prácu s databázou a v iných SU nie je tlačidlo s výkričníkom. Ale nevyhnutne existuje špeciálne okno, v ktorom môžete písať príkazy SQL.
Access vám tiež umožňuje upravovať dotazy v režime príkazu SQL:



Pravidlá jazyka SQL nie sú také zložité. Môžete sa presvedčiť sami! Vytvorte jednoduchý dotaz (napríklad uveďte meno, plemeno a dátum narodenia psa s menom Harry). Teraz otvorte svoj vyhľadávací dotaz pre Harryho v režime SQL!
Pokyny sú veľmi jednoduché:
VYBERTE pole1, pole2, ...
Z tabuľky 1, tabuľky 2, ...
KDE podmienka1, podmienka2, ...


Teraz otvorte aktualizáciu, zmeňte, odstráňte dotazy (quDelDog, quUpdateDog, quAddDog) v režime SQL a zapíšte si šablóny ich príkazov SQL na kus papiera (ako sa to práve robilo pre výberový dotaz).


Dopyty s parametrom, dotazy na zoskupovanie a dopyty s výpočtami sú rovnaké dopyty SQL, ale iba s trochou viac ťažké podmienky výber. Jazyk SQLnenahraditeľný nástroj pre tých, ktorí pracujú s databázami!

Úlohy

Tu sú témy, ktorým sme sa venovali:
- jednoduché a zložené podmienky výberu
- LIKE operátor
- výber z niekoľkých tabuliek
- tvorca výrazov
- dotazy s parametrom
- požiadavky na zoskupenie
- žiadosti o aktualizáciu, pridanie, odstránenie
- dotazovací jazyk SQL.


Je ich veľa! Keď ich však zvládnete, môžete v databáze nájsť akékoľvek informácie.


Otestujte si svoje znalosti! Spustite vo svojej databáze nasledujúce dotazy (alebo premenujte tie, ktoré už boli spustené, aby zodpovedali názvom úloh):

1. ukážka

quSelectDog: Nájdite všetkých setrov Shar Pei a Gordona z regiónov (NIE z Moskvy); použite operátor nerovný sa.

2. Rovnako ako operátor

quLike: Nájdite všetkých predplatiteľov MTS (tých, ktorí majú číslo mobilného telefónu začínajúce na 8 (916) ...).

3. výrazy

quEvalText: Napíšte výraz, ktorý robí priezvisko s iniciálkami z priezviska, mena a priezviska. Ivanov Ivan Ivanovič -> Ivanov I.I.
quEvalDate: Napíšte výraz, ktorý na základe dátumu narodenia vypočíta, aký starý je pes.
quEvalIif: napíšte výraz, ktorý určuje podľa veku, v akej vekovej kategórii je pes: „šteňa“ - do roka; „Junior“ - od jedného do dvoch rokov; „Senior“ - starší ako dva roky.
Dodatok: Aplikujte pri jednej úlohe jeden spôsob výpočtu veku psa, pri druhom - ďalší: 1) odpočítajte rok narodenia psa od aktuálneho roku; 2) pomocou funkcie DateDiff vypočítajte, koľko dní uplynulo od narodenia do dnešného dňa.

4. parameter

quParametre: Vytvorte dotaz, ktorý bude uvádzať všetky psy podľa priezviska majiteľa, čo je bezplatný parameter.

5. zoskupenie

quGroup: Zistite, ktorý pes vyvolal najkontroverznejšie názory rozhodcov.

6. úprava databázy

Krátko pred výstavou majiteľ Gorokhovets odišiel na trvalý pobyt (trvalé bydlisko) do Nemecka a všetky psy odovzdal svojmu priateľovi Michailovi Igorevičovi Karpovovi. Požadovaný:
1) quAddOwner: pridať záznam o novom majiteľovi;
2) quUpdateOwner: zmeniť ID majiteľa psov Gorokhovets na Karpov ID;
3) quDelOwner: odstrániť Gorokhovets z databázy.


Čakám na vaše databázy s dokončenými úlohami, ako aj na šablóny príkazov SQL pre požiadavky na aktualizáciu, zmenu, vymazanie.

Dnes budeme hovoriť o „Skupinových operáciách v prístupových dotazoch“. Hromadné operácie v prístupových dotazoch vám umožňujú vybrať skupiny záznamov s rovnakými hodnotami v určených poliach a vypočítať súčty pre každú zo skupín z iných polí pomocou jednej z agregačných funkcií. Štatistické funkcie sú primárne použiteľné pre číselné, menové a dátové typy.
V. Prístup Existuje deväť štatistických funkcií:

  • Suma - súčet hodnôt určitého poľa pre skupinu;
  • Priem. - priemer všetkých hodnôt poľa v skupine;
  • Max, Min - maximum, minimálna hodnota poľa v skupine;
  • Počet - počet hodnôt poľa v skupine bez prázdnych hodnôt;
  • StDev - štandardná odchýlka od priemernej hodnoty poľa v skupine;
  • Var je rozptyl hodnôt poľa v skupine;
  • Prvý a posledný - hodnota poľa z prvého alebo posledného záznamu v skupine.

Výsledok pomocou skupinových operácií obsahuje jeden záznam pre každú skupinu. Dotaz v prvom rade zahŕňa, podľa ktorého sa vykonáva zoskupovanie, a polia, pre ktoré sa vykonávajú štatistické funkcie. Okrem týchto polí môže dotaz obsahovať polia, pomocou ktorých sa nastavujú podmienky výberu.
Uvažujme konštrukciu dotazu s jednou tabuľkou so skupinovou operáciou pomocou tabuľky DELIVERY_PLAN ako príkladu.

Súhrnný dotaz

Úloha. Určte celkové množstvo každého tovaru, ktorý sa má dodať zákazníkom na základe zmlúv. Všetky údaje o množstve tovaru plánovaného na dodanie sú uvedené v tabuľke DODÁVKA_PLÁN.

  1. V návrhovom režime vytvorte výberový dotaz z tabuľky DELIVERY_PLAN.
  2. Zo zoznamu tabuľky presuňte pole CODE_TO - kód produktu do formulára žiadosti. Toto pole sa použije na zoskupenie záznamov tabuľky.
  3. Do formulára žiadosti presuňte pole QUANTITY_POST, ktoré sa použije na výpočet celkového množstva každého z objednaných tovarov vo všetkých zmluvách.
  4. Spustite príkaz Totals zo skupiny Show / Hide. V rozložení dotazu Celkom sa zobrazí nový riadok s hodnotou Zoskupiť podľa v oboch poliach dotazu.
  5. V stĺpci QUANT_POST nahraďte slovo Group By funkciou Sum. Ak to chcete urobiť, zavolajte do zoznamu a zvoľte túto funkciu. Formulár žiadosti bude mať formu uvedenú na obr. 4.11.
  6. Výsledok dotazu (obrázok 4.12) zobrazíte kliknutím na tlačidlo Spustiť v skupine Výsledky.
  7. Podpis poľa Sum-QTY_POST nahraďte objednaným tovarom. Za týmto účelom prepnite do režimu návrhu, vo forme požiadavky umiestnite kurzor myši na pole QTY_POST a stlačte pravé tlačidlo. V kontextovej ponuke vyberte položku Vlastnosti. V okne Vlastnosti poľa zadajte Titulok - Objednané položky. Na otvorenie hárka vlastností je možné vykonať príkaz Hárok vlastností v skupine Zobraziť / skryť.


  1. Uložiť pod názvom Objednaný tovar.
  2. Na výpočet počtu objednaných tovarov v každom mesiaci zoskupte podľa dvoch polí: CODE_TO a TIME_POST, v ktorom je uložený mesiac dodania (obr. 4.13).
  3. Na výpočet počtu objednaných tovarov v danom mesiaci doplňte predchádzajúcu požiadavku zadaním parametra požiadavky do podmienky výberu (obr. 4.14).



Dotaz s funkciou Count

Úloha. Zistite, koľkokrát bol tovar odoslaný pre každú zo zmlúv. Skutočnosť odoslania je zaznamenaná v tabuľke PRÍJMOV.

  1. Vytvorte výberový dotaz na základe tabuľky PREHRAŤ.
  2. Zo zoznamu polí v tabuľke BILLBOARD presuňte pole NOM_DOG do formulára dopytu. Toto pole by sa malo používať na zoskupovanie.
  3. V skutočnosti zmysel problému spočíva v spočítaní počtu riadkov v tabuľke s rovnakým číslom zmluvy, takže nezáleží na tom, v ktorom poli sa bude počítať funkcia Count. Do formulára žiadosti presuňte ľubovoľné pole, napríklad znova NOM_DOG.
  4. Spustite príkaz Totals zo skupiny Show / Hide. Nahraďte slovo Group By v jednom zo stĺpcov s názvom NOM_DOG funkciou Počet. Formulár žiadosti bude mať formu uvedenú na obr. 4.15.