Atviras
Uždaryti

Sukurkite paprastą užklausą. Duomenų atrankos užklausos programoje Access: užklausos su parametru kūrimas, kryžminės užklausos kūrimas Kaip kurti užklausas programoje Access

Paprastos užklausos kūrimas

Lentelės duomenis galima pasiekti, tada juos nuskaityti, atlikti kai kuriuos skaičiavimus – visa tai atliekama naudojant pasirinkimo užklausą. Tokiu būdu taip pat galite gauti bet kokią informaciją apie duomenis, atlikti duomenų filtravimą, įvesti duomenis į formą ar ataskaitą, automatizuoti duomenų valdymą.

„Microsoft Access 2007“ yra keturi užklausų kūrimo būdai:

Užklausų vedlio naudojimas;

Naudojant užklausų kūrimo priemonę;

SQL redaktoriaus režimu;

Kūrimas naudojant vedlį

Dabar sužinosite, kaip sukurti paprastą užklausą programoje Access 2007 naudojant užklausų vedlį. Norėdami tai padaryti, atlikite šiuos veiksmus.

2. Eikite į skirtuką Kūrimas(5.1 pav.).

Ryžiai. 5.1. Sukurti skirtuką

Lentelės, Formos, Ataskaitos, Kita. Spustelėkite mygtuką Užklausų vedlys grupėje Kita. Atsidarys pirmasis užklausų vedlio langas (5.2 pav.).

Ryžiai. 5.2. Pirmasis užklausų vedlio langas – sukurkite naują užklausą

4. Pasirodžiusiame lange pateikiamos keturios užklausų kūrimo parinktys. Pasirinkite parinktį Paprastas prašymas ir paspauskite mygtuką Gerai. Atsidarys toks užklausų vedlio langas (5.3 pav.).

Ryžiai. 5.3. Kitame vedlio lange turėtumėte nurodyti užklausos lentelę

5. Norėdami sukurti užklausą išskleidžiamajame sąraše Lentelės ir užklausos pasirinkite reikiamą lentelę.

6. Pasirinkę lentelę, iš sąrašo taip pat nurodykite reikiamus laukus Galimi laukai. Perkelkite juos į sąrašą Pasirinkti laukai vienu mygtuko paspaudimu

Ryžiai. 5.4. Pasirinkti lentelės laukai

7. Perkėlę laukus į dešinįjį sąrašą, spustelėkite mygtuką Toliau, ekrane atsiras langas Query Wizard (5.5 pav.).

Ryžiai. 5.5.Šiame vedlio lange nurodote užklausos pavadinimą

8. Lauke galite įvesti savo naujos užklausos pavadinimą Nurodykite užklausos pavadinimą. Taip pat galite peržiūrėti užklausos rezultatus nustatydami jungiklį į padėtį Norėdami peržiūrėti duomenis, atidarykite užklausą. Atlikę šiuos veiksmus, pereikite prie kito veiksmo spustelėdami mygtuką Paruošta.

9. Užklausų vedlys baigs savo darbą. Tai sukurs ir išsaugos užklausą dabartinėje duomenų bazėje. Naujos užklausos pavadinimą matysite naršymo srityje, o pasirinktus duomenis – pagrindinio lango lentelėje (5.6 pav.).

Ryžiai. 5.6. Lentelė su duomenimis, pasirinktais pagal užklausą

Kaip matote, paprastos užklausos sukūrimas naudojant vedlį užtrunka mažiau nei minutę ir nesukelia jokių sunkumų. Žemiau sužinosite, kaip sukurti ataskaitą naudojant kitą įrankį – užklausų dizainerį.

Užklausos kūrimas konstruktoriuje

Naujos užklausos kūrimas naudojant užklausų kūrimo priemonę yra šiek tiek sudėtingesnis, tačiau suteikia daug daugiau galimybių. Kai naudojate užklausų kūrimo priemonę, galite ne tik kurti naujas užklausas, bet ir modifikuoti esamas duomenų bazėje esančias užklausas. Jei paleisite dizainerį, pamatysite įrankius, leidžiančius kurti ir redaguoti užklausą. Pasirodžiusiame lange yra užklausos lentelė ir užklausos forma (lentelė, kurios langeliai naudojami užklausos struktūrai ir savybėms nustatyti).

Norėdami sukurti užklausą naudodami konstruktorių, atlikite šiuos veiksmus:

1. Atidarykite norimą duomenų bazę.

2. Dabar eikite į skirtuką Kūrimas(žr. 5.1 pav.).

3. Skirtuke rodomos grupės Lentelės, Formos, Ataskaitos, Kita. Spustelėkite mygtuką Užklausų kūrimo priemonė grupėje Kita. Atsidarys langas Lentelės pridėjimas(5.7 pav.).

Ryžiai. 5.7. Pridėti lentelės langą

4. Pasirodžiusiame lange yra trys skirtukai: Lentelės, Prašymai, Lentelės ir užklausos. Skirtuke Lentelės pasirinkite reikiamą lentelę ir spustelėkite mygtuką Papildyti. Tada spustelėkite mygtuką Uždaryti, po kurio ekrane atsiras tuščia užklausos forma pagal pasirinktą lentelę (5.8 pav.).

Ryžiai. 5.8. Prašymo forma prašymo dizainerėje

5. Lango apačioje išskleidžiamajame sąraše Laukas pasirinkite reikiamą lentelės lauką (5.9 pav.).

Ryžiai. 5.9. Lentelės lauko pasirinkimas

6. Lauke Išvestis ekrane Atžymėkite laukelį, kad šis laukas nebūtų rodomas.

7. Pasirinkite šį išskleidžiamąjį sąrašą Laukas ir nurodykite kitą lauką, kad sudarytumėte užklausą.

8. Greitosios prieigos įrankių juostoje spustelėkite Sutaupyti. Atsiras langas, kuriame galėsite įvesti naujos užklausos pavadinimą (5.10 pav.).

Ryžiai. 5.10. Langas Įveskite užklausos pavadinimą

9. Paspauskite mygtuką Gerai. Norėdami peržiūrėti užklausą, spustelėkite mygtuką Vykdyti skirtuke Konstruktorius. Pamatysite taip (5.11 pav.).

Ryžiai. 5.11. Užklausos rezultatas

Lange rodomas užklausos rezultatas – laukas Adresas nuo stalo Klientai. Laukas Telefonas nerodomas ekrane, nes panaikinote žymės langelio žymėjimą Išvestis ekrane. Užklausos sukūrimas naudojant dizainerį užima daugiau laiko, tačiau suteikia žymiai daugiau funkcionalumo.

Užklausos kūrimas iš filtro

Filtras yra sąlygų rinkinys, leidžiantis pasirinkti įrašų poaibį arba juos rūšiuoti. Kaip ir pasirinktos užklausos, filtrai nuskaito įrašų poaibius iš pagrindinės lentelės arba užklausos. Tarp filtrų ir pasirinktų užklausų yra tam tikras ryšys, tai reiškia, kad galite išsaugoti užklausą kaip filtrą ir naudoti filtrą naujai užklausai sukurti.

Pabandykime išsiaiškinti, kaip sukurti užklausą pagal filtrą.

1. Atidarykite norimą duomenų bazę. Naršymo srityje spustelėkite norimą lentelę.

2. Eikite į skirtuką namai.

3. Elementų grupėje Rūšiavimas ir filtravimas paspauskite mygtuką, kad atidarytumėte galimų elementų sąrašą. Pasirinkite elementą Išplėstinis filtras. Pakeiskite esamą filtrą arba sukurkite naują.

4. Skirtuke namai grupėje Rūšiavimas ir filtravimas spustelėkite mygtuką Taikyti filtrą.

5. Galite pakeisti filtro sąlygas, jei nesate patenkinti lentelės įrašais. Baigę procedūrą, grįžę į langą, galite išsaugoti filtrą kaip užklausą Filtro konstruktorius. Eikite į skirtuką namai. Spustelėkite mygtuką Išplėstinės filtro parinktys esantis grupėje Rūšiavimas ir filtravimas. Atsidariusiame meniu pasirinkite komandą Išsaugoti kaip užklausą. Ekrane atsiras langas, kuriame galėsite įvesti naujos užklausos pavadinimą (5.12 pav.).

Ryžiai. 5.12. Išsaugoti kaip užklausos langą

6. Į lauką įveskite užklausos pavadinimą Prašyti vardo ir paspauskite mygtuką Gerai. Dėl to gausite užklausą į duomenų bazę. Kaip matote, užklausų kūrimas „Microsoft Access 2007“ yra gana greitas ir nesukelia jokių sunkumų. Bet tai dar ne viskas: sukurtas užklausas galima modifikuoti, apie tai bus kalbama kitame skyriuje.

Iš knygos The C# 2005 programavimo kalba ir .NET 2.0 platforma. pateikė Troelsenas Andrew

Paprastos ASP.NET 2.0 svetainės kūrimas Dėl ribotos knygos vietos čia negalime aprašyti visų žiniatinklio valdiklių, įtrauktų į ASP.NET 2.0 pristatymą, funkcijų (tam reikėtų atskiros ir gana ilgos knygos). Tačiau norint iliustruoti darbą su skirtingais

Iš knygos TCP/IP architektūra, protokolai, įgyvendinimas (įskaitant IP versiją 6 ir IP saugumą) pateikė Faith Sydney M

12.16.2 Užklausos skiltis Užklausoje yra 12.3 lentelėje nurodyti laukai. Paprastai pranešime yra viena užklausa. Tačiau į bendrą skyrių galite sujungti kelias skirtingas užklausas 12.3 lentelė DNS užklausos laukai Lauko aprašymas Pavadinimas Domeno pavadinimas arba IP adresas submedyje

Iš knygos Programavimas rubinuose [Kalbos ideologija, taikymo teorija ir praktika] pateikė Fultonas Halas

Iš knygos Eskizai programuotojams [neužbaigti, 1–24 skyriai] pateikė Wetherell Charles

Iš C++ knygos. Receptų rinkinys autorius Diggins Christopher

15. Paprastesnis už paprastus, arba Šablonų paieška iš pirminių skaičių Kiekvienas, kuris studijuoja pirminius skaičius, yra jais susižavėjęs ir tuo pačiu jaučia savo bejėgiškumą. Pirminių skaičių apibrėžimas toks paprastas ir akivaizdus; taip lengva rasti kitą pirminį skaičių; išskaidymas į pirminius

Iš knygos Microsoft Access 2007 autorius Dneprovas Aleksandras G.

1.2. Paprastos programos „Sveikas, pasauli“ kūrimas iš komandinės eilutės uždavinioNorite sukurti paprastą „Sveiki, pasauli“ programą, kaip parodyta 1.4 pavyzdyje. 1.4 pavyzdys. Paprasta „Sveikas, pasauli“ programa hello.cpp#include int main() ( std.:cout<< "Hello, World! ";}РешениеВыполните следующие

Iš knygos Nedokumentuotos ir mažai žinomos „Windows XP“ funkcijos autorius Klimenko Romanas Aleksandrovičius

1.7. Paprastos programos „Sveiki, pasauli“ kūrimas naudojant „Boost.Build“ problemąNorite sukurti paprastą „Hello, World“ programą, tokią kaip 1.4 pavyzdyje, naudodami „BoostBuild.Solution“ Kataloge, kuriame norite sukurti vykdomąjį failą ir bet kokius tarpinius jos sukurtus failus ,

Iš knygos Skaitmeninė fotografija. Triukai ir efektai autorius Gurskis Jurijus Anatoljevičius

1.15. Paprastos programos „Sveikas, pasauli“ kūrimas naudojant GNU Make ProblemNorite sukurti paprastą „Hello, World“ programą, tokią kaip 1.4 pavyzdyje, naudodami GNU make. Sprendimas Prieš rašydami pirmąjį makefile, turėtumėte susipažinti su terminija, - failą sudaro

Iš knygos QT 4: GUI programavimas C++ pateikė Blanchette Jasmine

14.1. Paprasto XML dokumento analizės problema Turite duomenų rinkinį, saugomą XML dokumente. Norite išanalizuoti dokumentą ir paversti tuos duomenis į C++ objektus. XML dokumentas yra gana mažo dydžio ir gali

Iš autorės knygos

Užklausos redagavimas Galite redaguoti užklausą, įrašytą Microsoft Access 2007 duomenų bazėje. Jūs turite galimybę pataisyti užklausos pavadinimą, redaguoti jos tekstą SQL formatu, taip pat redaguoti užklausą užklausų dizainerėje. Žemiau yra keletas iš labiausiai

Iš autorės knygos

Užklausos naudojimas Jei sukūrėte užklausą, ką turite padaryti, kad ją paleistumėte ir kaip atspausdinti užklausos rezultatus? Atsakymai į šiuos klausimus pateikiami šioje dalyje Užklausos vykdymas Užklausa – tai prieiga prie duomenų, norint gauti tam tikrą informaciją arba

Iš autorės knygos

Lentelių kūrimas naudojant užklausą Duomenų šaltinis kuriant naują lentelę yra viena ar daugiau esamų lentelių. Nauja lentelė gali būti toje pačioje duomenų bazėje, kurioje yra šaltinis, arba bet kurioje kitoje. Kodėl verta kurti lenteles naudojant

Iš autorės knygos

Automatinis ataskaitos kūrimas pagal lentelės arba užklausos duomenis Ataskaitos kūrimo procesas prasideda pasirenkant laukus, kurie turi būti įtraukti į ataskaitą, taip pat identifikuojant lenteles ar užklausas, kuriose yra šie laukai. Gali būti, kad kurdami ataskaitą jūs

Iš autorės knygos

Paieškos sistemų užklausų komandų kūrimas Ir dar keli žodžiai apie adreso juostą. Ar dažnai naudojatės tokiomis paieškos sistemomis kaip Rambler, Google ar Yandex? Ir tuo pačiu metu pirmiausia einate į paieškos variklio pradžios puslapį ir nurodote užklausą

Iš autorės knygos

10.1. Paprasto ir sudėtingo pasirinkimo įrankiai Pasirinkimas – tai kažko atskyrimas nuo kažko kito. Kalbant apie grafiką ir ypač kompiuterinę grafiką, tai taškų rinkinio atskyrimas nuo juos supančių taškų. Apdoroti skaitmenines nuotraukas, išmanyti atrankos būdus

Iš autorės knygos

QTextBrowser kaip paprastos pagalbos naršyklės naudojimas Didelėms programoms gali prireikti sudėtingesnės pagalbos sistemos, nei paprastai pateikia patarimai, būsenos juostos komentarai ir pagalba „kas tai?“.

„Microsoft“ suteikia vartotojams daug galimybių kurti ir dirbti su duomenų bazėmis. Šiuo metu duomenų bazės yra labai plačiai naudojamos visose srityse ir srityse. Apskritai galime pasakyti, kad dabar be jų neapsieiname. Šiuo atžvilgiu labai svarbu mokėti dirbti su Access lentelėmis. Pagrindinis vartotojo sąveikos su duomenų baze elementas yra užklausa. Šiame straipsnyje atidžiau pažvelgsime į tai, kaip sukurti užklausą programoje Access. Pradėkime. Pirmyn!

Pirmiausia išsiaiškinkime, kas yra prašymas. Tai yra duomenų bazės elementas, naudojamas norint pasirinkti reikiamą informaciją iš lentelės. Jie būna dviejų tipų:

  • Paimti mėginį (leisti gauti duomenis ir atlikti su jais operacijas);
  • Keisti (leidžia pridėti, ištrinti ir keisti reikšmes).

Dabar pereikime prie praktikos. Eikite į skirtuką „Sukurti“ ir spustelėkite mygtuką „Užklausų kūrimo priemonė“. Atsidariusiame lange pasirinkite vieną ar daugiau lentelių, iš kurių norite pasirinkti duomenis. Paspaudę mygtuką „Vykdyti“, gausite visą informaciją iš jūsų pasirinktų lentelių. Norėdami konkretesnio pasirinkimo, eikite į skirtuką „Dizaineris“ ir lauke „Pasirinkimo sąlyga:“ įveskite norimą žodį arba skaičių. Pavyzdžiui, norite gauti visų darbuotojų, gimusių 1980 m., sąrašą. Norėdami tai padaryti, eilutėje „Pasirinkimo sąlyga:“ stulpelyje „Gimimo data“ įveskite 1980 m. ir spustelėkite mygtuką „Vykdyti“. Programa iš karto pateiks rezultatą. Patogumui sukurtą užklausą galite išsaugoti, kad galėtumėte ją naudoti ateityje. Naudokite klavišų kombinaciją Ctrl + S ir įveskite pavadinimą atitinkamame lauke, tada spustelėkite „Gerai“.

Nurodžius duomenų atrankos sąlygą, gauname norimą pavyzdį

Norėdami suskaičiuoti reikšmes stulpelyje, galite naudoti vadinamąsias grupės operacijas. Norėdami tai padaryti, skirtuke „Dizainas“ spustelėkite mygtuką „Rezultatai“. Pasirodžiusioje eilutėje „Grupavimas“ pasirinkite funkciją „Count“, kuri leidžia pridėti visas reikšmes, kurios nėra nulinės. Kad stulpelio pavadinime nebūtų rodomas žodis „Count“, eilutėje „Laukas“ įveskite pavadinimą prieš tai, kas buvo nurodyta anksčiau. Išsaugojimas atliekamas taip pat, naudojant Ctrl+S kombinaciją.

Prieiga skaičiuoja netuščius langelius

Dabar sukurkime parametrinę užklausą. Tai leidžia pasirinkti pagal įvestą parametrą. Pavyzdžiui, iki nurodytos datos. Atidarę norimą duomenų bazę, atitinkamame stulpelyje įrašykite (be kabučių) „[Nurodykite datą]“. Reikalingi laužtiniai skliaustai. Atsidariusiame lange įveskite norimą datą. Po to programa automatiškai pasirinks pagal įvestą datą. Galite įdėti ">" (didesnis nei) ir "<» (меньше) чтобы отобразить элементы раньше либо позже заданной даты. Например, список сотрудников, которые сдали отчёты до 01.07.

Kaip sukurti kryžminę nuorodą? Tiesiog įrankių juostoje raskite mygtuką „Kryžius“ ir spustelėkite jį. Po to elemente „Crosstab“ pirmajame langelyje pasirinkite „Eilučių antraštės“, antrajame „Stulpelių antraštės“, o trečiajame „Vertė“. Tada galite suskaičiuoti reikšmes naudodami jau minėtą funkciją „Count“. Atkreipkite dėmesį, kad jei antrame langelyje nurodysite „Eilučių antraštes“, kaip ir pirmajame, o ne „Stulpelių antraštes“, niekas neveiks. Būtinai atsižvelkite į tai.

Duomenų bazėje atliekame kryžminę užklausą

Taip pat galite pateikti prašymą sukurti lentelę. Kaip tai daroma? Tiesiog atidarykite duomenų bazes, su kuriomis dirbate, tada užpildykite langelį „Pasirinkimo sąlyga“ ir spustelėkite mygtuką „Sukurti lentelę“. Nepamirškite paspausti "Vykdyti". Atsižvelgdama į jūsų nurodytus parametrus, „Microsoft Access“ sukurs naują lentelę. Pavyzdžiui, visų darbuotojų sąrašas su kontaktine informacija pagal profesiją „Buhalteris“.

Išsaugant reikia nurodyti naujos lentelės pavadinimą ir vietą

Kaip matote, „Microsoft Access“ leidžia atlikti daugybę dalykų. Žinodami, kaip pateikti užklausas programoje „Access“, dirbdami su duomenų bazėmis jausitės daug labiau pasitikintys. Komentaruose parašykite, ar šis straipsnis jums buvo naudingas, ir užduokite klausimus aptariama tema.

Užklausos yra vienas iš Access DBVS naudojamų dokumentų tipų, skirtų apdoroti lentelėse saugomus duomenis.

Užklausas galima kurti režimu dizaineris ir su pagalba meistrai. Dizaineris leidžia patiems kurti bet kokio tipo užklausas, tačiau šis režimas rekomenduojamas vartotojams, kurie jau turi šiek tiek patirties kuriant užklausas.

Užklausos vedlys keliais etapais surenka informaciją, reikalingą užklausai suformuluoti, ir automatiškai ją sudaro, atsižvelgdama į vartotojo atsakymus į pateiktus klausimus.

Naudodami „Access“ vedlius galite kurti šių tipų užklausas:

§ Paprastas prašymas.

§ Kryžminis prašymas.

§ Pasikartojantys įrašai.

§ Įrašai be pavaldinių.

Norėdami sukurti bet kurį iš jų, duomenų bazės lange pasirinkite objektą Užklausos ir spustelėkite mygtuką Sukurti. Atsidarys naujos užklausos langas, kurio išvaizda parodyta pav. 1.

1 pav. Būsenos duomenų bazės langas ir užklausų tipų pasirinkimo langas

Paprastas prašymas leidžia kurti naudojant Meistrai prašymo pavyzdys duomenis iš tam tikrų lentelių ar užklausų laukų, tai patogiausia pradedantiesiems vartotojams. Jį pasirinkus paleidžiamas vedlys, kurio pirmame lange (2 pav.) reikia pasirinkti lentelę sąraše Lentelės ir užklausos, pvz., Mokytojų darbuotojai, iš jo turimų laukų sąrašo pasirinkti tuos, kurie turi būti užklausoje ir kiekvieną išverskite paspausdami [> ]. Panašiai į užklausą įtraukiami laukai iš kitų lentelių toje pačioje duomenų bazėje.

Pastaba. Užklausa gali būti atliekama tik lentelėse arba tik duomenų bazės užklausose. Neleidžiama derinti laukų iš lentelės ir užklausos užklausoje.

2 pav. Užklausos laukų pasirinkimas.

Kryžminis prašymas atrodo kaip stalas , kuriame rodoma iki trijų pradinės lentelės laukų (stulpelių), vieno iš likusių langeliai konvertuojami į naujus stulpelius, o jų sankirtoje rodoma viena iš vartotojo nurodytų reikšmių - Variance, Minimal, Maksimalus, vidurkis, nuokrypis, skaičius, pirmasis, paskutinis ir tt Pavyzdžiui, užklausa pav. 4 yra kryžminė 1 lentelės užklausa pav. 3, kuriame atstumo reikšmės tapo stulpelių pavadinimais:

Parinktis Pasikartojantys įrašai sukuria užklausą, kad ieškotų pasikartojančių įrašų (eilučių) vienoje lentelėje arba užklausoje, lentelės pav. 3, su nurodytais laukais Atstumas ir Bilieto kaina atrodo taip (5 pav.)

MS Access leidžia sukurti tokią užklausą tik vienai lentelei ar užklausai (ne kelioms duomenų bazės lentelėms), o joje reikia nurodyti

3 pav. 1 lentelė kryžminės užklausos kūrimui


4 pav. Kryžminė lentelės užklausa. 1

tik tuos laukus, kuriuose vienu metu visiškai sutampa duomenys iš įrašų (pavyzdžiui, laukelis Transportas negali būti įtrauktas į šią užklausą). Be to, norėdami atpažinti, galite įtraukti nesikartojantį lauką (Miestas).

Įrašai be pavaldinių užklausa, skirta rasti įrašus, kurie neatitinka jokių lyginamos lentelės įrašų. Ši užklausa naudojama daugeliui lentelių duomenų bazių.

6 paveikslas 1 pagrindinė lentelė

Užklausa be pavaldinių lentelių palyginimui Pav. 3 ir pav. 6 parodys neatitinkančią eilutę (7 pav.):

Šios užklausos yra pagrindas kuriant sudėtingesnes užklausas, kuriose naudojamas dizaino režimas.

Šiandien mes išsamiai kalbėsime apie „Access“ užklausas.


Užklausos, kaip jau žinote, reikalingos norint dirbti su lentelėse esančiais duomenimis.
Norėdami sukurti užklausą...
1) ...atidaryti Užklausas duomenų bazės lange
2) ...ir sukurkite užklausą naudodami konstruktorių.



NENAUDOKITE užklausoms kurti. Meistras, nes leidžia daryti tik pačias paprasčiausias užklausas, o vėliau jas konvertuoti į sudėtingesnes yra dar sunkiau nei konstruktoriuje nuo nulio sukurti užklausą.

Tuščių eilučių filtravimas

Kai susietos kelios lentelės, gali atsirasti tuščių eilučių.



Kodėl tai vyksta?
Faktas yra tas, kad mūsų tbPerson lentelėje kartu su šunų savininkais taip pat įrašomi teisėjai (Petrovskaya, Yelets, Tereshchuk). Teisėjai neturi teisės vestis savo šunų į parodą, todėl eilutėse su jų pavardėmis yra tuščios kameros su šunų vardais.
Yra du būdai, kaip pašalinti tuščias eilutes.
1. Iškelkite sąlygą dėl šuns vardo reikšmės Nėra Nulinis, t.y. NETUŠČIA.



2. Arba pakeiskite ryšio tarp lentelių tipą lentelių srityje: reikia iškviesti kontekstinį meniu ryšio eilutėje, kuri pateikia netikslų rezultatą ir pakeisti Sujungimo parinktys.



Klausimas jums: kokius parametrus reikia pakeisti sujungimo parinkčių dialogo lange?

Užklausos su skaičiavimais

Kol kas atrinkome tik įrašus įvairioms sąlygoms. Bet Access leidžia ne tik peržiūrėti lentelėse įrašytus duomenis, bet ir atlikti SKAIČIAVIMUS: nustatyti amžių pagal gimimo datą; iš vardo, pavardės ir patronimo sudaryti pavardę su inicialais; Pagal prekės vieneto kainą ir jos kiekį nustatyti bendrą pirkimo kainą; Pagal knygos išleidimo datą bibliotekoje nustatykite baudos už skolą dydį ir daug daugiau. Skaičiavimams naudojamos integruotos funkcijos (panašios į esančias Excel).


Paprasčiausia operacija yra stygos papildymas. Parašykite langelyje išraišką, kad būtų rodoma ši frazė: savininkas nuo miesto miestas .
Norėdami tai padaryti, naujojo sąlygų srities stulpelio viršutinėje eilutėje parašykite: + „iš miesto“ + .



Laukų pavadinimai rašomi laužtiniuose skliaustuose, eilučių fragmentai rašomi kabutėse, tarp jų – papildymo ženklai.


Skaičiavimų išraiškos rašomos viršutinėje eilutėje ( Laukas) sąlygų sritis. Kol kas sąlygas parašėme apatinėse eilutėse ( Atrankos sąlygos).


Kad nesusipainiotumėte: viršutinėje eilutėje rašome KĄ rodyti ekrane, o tada (apačioje) - prie KOKIOS BŪKLĖS.


Pratimas: Parašykite išraišką, kad viename langelyje būtų rodoma savininko pavardė ir skliausteliuose miestas, kuriame jis gyvena. Kaip šitas: Ivanovas (Maskva). Iš lentelės reikia įvesti miestą ir pavardę.

Išraiškų kūrimo priemonė

Kad būtų patogiau redaguoti išraiškas, yra specialus redaktorius - „Expression Builder“. Tai atrodo taip:



Ir tai vadinama naudojant kontekstinį meniu: reikia uždėti žymeklį ant langelio, kuriame rašysite išraišką:



Išraiškų kūrimo priemonėje galite pasirinkti iš funkcijų bibliotekos:



ir duomenis iš lentelių (galite naudoti TIK tas lenteles, kurios naudojamos šioje užklausoje ir rodomos duomenų srityje):



Kai du kartus spustelite lauko pavadinimą arba funkciją sąraše, „Access“ dažnai įterpia žodį „išraiška“, nurodydama, kad ŠIOJE VIETOJE galima įterpti kitas funkcijas ir laukų pavadinimus. Nepamirškite pašalinti nereikalingų žodžių „išraiška“!


Pažiūrėsime į teksto ir laiko funkcijas, taip pat sąlyginį teiginį Iif(sąlyga; jei-tiesa; jei-false).


Tekstas Funkcijos leidžia konvertuoti eilutės kintamuosius:
Left("Ivanovas"; 2) = "Ivanovas" palieka n kairiųjų simbolių
LCase("Ivanov") = Ivanovas visas raides rašo mažosiomis raidėmis
InStr(1; "Ivanov"; "bet") = 4 suranda poeilelę (trečiąjį argumentą) eilutėje (antrasis argumentas) ir prilygsta poeilutės vietai (nuo pradžios) eilutėje
Len („Ivanov“) = 6 rodo simbolių skaičių eilutėje
StrComp("Ivanovas"; "Petrov") = -1 lygina dvi eilutes: jei jos lygios, tada grąžina 0
ir kiti…


Laikinas leidžia dirbti su laikinais kintamaisiais:
Mėnuo (#12.04.2007#) = 4
Metai (#12.04.2007#) = 2007 m
Diena (#12.04.2007#) = 12.
Dabar() = 2008-04-28 14:15:42 (dabartinė data ir laikas)
Data () = 2008-04-28 (šiandien)
DateDiff("d"; #12.04.2007#; #28.04.2007#) = 16 nustato skirtumą tarp dviejų datų ("d" - dienomis, ww - savaitėmis, m - mėnesiais, yyyy - metais ir tt .)
ir kiti…


galvosūkis apdoroti sąlygines išraiškas:
Iif(<=1; «щенок»; «взрослый») аналог функции ЕСЛИ из Ecxel.
ir kiti…


Pratimas: parašykite posakį, kuris sudaro pavardę su inicialais iš pavardės, vardo ir patronimo. Ivanovas Ivanas Ivanovičius -> Ivanovas I.I.
Pratimas
Pratimas
Papildymas: Yra du būdai apskaičiuoti šuns amžių: vienas tiksliau, kitas mažiau:
1) iš einamųjų metų atimti šuns gimimo metus;
2) naudodami DateDiff funkciją, apskaičiuokite, kiek dienų praėjo nuo gimimo iki šiandien. Vienoje užduotyje naudokite vieną metodą, kitoje – kitą.

Užklausos su parametru

Kai bėgate užklausa su parametru, skirtingai nei įprasta pasirinkimo užklausa, ji nevykdoma iš karto, bet pirmiausia dialogo lange prašoma paaiškinti kai kurias pasirinkimo sąlygas. Pavyzdžiui, norime gauti išsamią informaciją apie šunį, turintį tam tikrą turnyro numerį.



Šios užklausos struktūra yra tokia:



Toje vietoje, kur paprastai yra pasirinkimo sąlyga, dabar rašomas klausimas (laužtiniuose skliaustuose), kuris bus užduotas vartotojui. Ir vartotojo atsakymas, kaip galbūt atspėjote, bus įterptas į šį langelį kaip pasirinkimo sąlyga.


Pratimas: sukurkite užklausą, kuri pateiks visus šunis pagal savininko pavardę, kuri yra nemokamas parametras.

Užklausos su grupavimu

Išraiškų kūrimo priemonių pagalba galime atlikti operacijas vienoje eilutėje: pridėti vertes į langelius, transformuoti duomenis.
Bet ką daryti, jei vienu metu reikia apdoroti kelias eilutes: apskaičiuoti taškų sumą, rasti eilučių, turinčių tą pačią konkretaus lauko reikšmę, skaičių?
Tai atliekama naudojant grupavimą (labai panašiai kaip apibendrinant programoje Excel).


Suskaičiuokime, kiek kiekvienos veislės šunų atvyko į parodą. Norėdami tai padaryti, į sąlygų sritį palikime tik du laukus: pavadinimą ir veislę ir iškvieskite papildomą eilutę grupinės operacijos(per kontekstinį meniu sąlygų srityje):



Dabar sugrupuokime šunis pagal veislę ir suskaičiuokime skirtingų slapyvardžių skaičių kiekvienoje grupėje:



Susumuokite parodos rezultatus ir paskaičiuokime eksterjero balų vidurkį, treniruočių balų vidurkį ir jų sumą.


Į lentelės sritį pridėkite lentelę su įvertinimais (tbMarks). Sugrupuojame įvertinimus pagal šuns turnyro numerį ir iš grupės operacijų pasirenkame vidutinę Avg reikšmę (iš anglų k. vidutinis- vidutinis).


Vykdykite užklausą ir peržiūros režimu pastebėkite, kad stulpeliai su grupės operacijomis turi dvigubą pavadinimą (operacija + lauko pavadinimas). Tai mums pravers skaičiuojant taškų sumą.





Taip pat galite suapvalinti reikšmes iki vieno skaičiaus po kablelio: Apvalus (+;1)


Pratimas: Sužinokite, kuris šuo buvo prieštaringiausias tarp teisėjų. Norėdami tai padaryti, iš didžiausio balo turite atimti minimumą.

Prašymai pakeisti, ištrinti, papildyti

Pirmoje pamokoje jau kalbėjome apie tai, kad užklausos leidžia ne tik peržiūrėti duomenis iš lentelių, bet ir redaguoti įrašus: pridėti naujų, ištrinti, keisti. Užklausos tipą galite pakeisti naudodami įrankių juostoje esantį užklausų sąrašą.



Parodos išvakarėse duomenų bazės operatorius gavo naujos informacijos:
1) Desi šuo serga ir negalės dalyvauti parodoje;
2) per klaidą Guardian, kuris iš tikrųjų yra anglų seteris, buvo įtrauktas į airių seteris;
3) šeimininkė Migunova pateikė paraišką dalyvauti kito savo šuns (slapyvardis: Harry, veislė: Gordon Setter, lytis: m, gimimo data: 09.15.07) parodoje.


Pradėkime redaguoti duomenų bazę.
1) Ištrinkite įrašą iš Desi.
Sukurkite „quDelDog“ užklausą. Prašymo tipas – ištrinti. Pasikeitus užklausos tipui, šiek tiek keičiasi ir sąlygų sritis. Atsirado nauja ląstelė Pašalinimas. Po juo nurodote sąlygą, pagal kurią norite pasirinkti įrašus, kuriuos norite ištrinti. Net jei nurodysite pasirinkimo sąlygą vienam laukui, VISAS įrašas bus ištrintas.



Spustelėjus „šauktuką“, ekrane pasirodys pranešimas, nurodantis, kad įrašas buvo ištrintas. Dabar atidaryta tbDog stalas ir įsitikinkite, kad Desi jame nėra.


2) „Guardian“ pakeiskite airių seterį į anglų seterį.
Sukurkite quUpdateDog užklausą. Prašymo tipas – atnaujinimas. Surandame globėją ir atnaujiname jo veislę.



Atviras tbDog stalas ir įsitikinkite, kad Guardian veislė yra anglų seteris.


3) Pridėkite įrašą su Harry.
Sukurkite „quaddDog“ užklausą. Užklausos tipas – pridėti. Pridėti užklausos turi vieną funkciją: lentelės srityje rodomos NE lentelės, KURIOSE pridedate įrašą, o KUR paimate duomenis (jei reikia). Nurodote tikslinę lentelę (prie kurios pridedami įrašai) dialogo lange, kuris pasirodo, kai tik nustatote užklausos tipą (norint pridėti):



Kadangi mes neimame duomenų iš kitų lentelių, o kuriame naują įrašą, lentelės sritis turi būti TUŠČIA! (ten neturėtų būti jokių lentelių). Sąlygų srityje ant linijos Laukas rašote KĄ pridėti (naują kiekvieno lauko reikšmę), ir eilutėje Papildymas KUR (laukų pavadinimai):



Atviras tbDog stalas ir įsitikinkite, kad jame pasirodys Haris!

SQL užklausų kalba

Spustelėjus „šauktuką“, užklausa įvykdoma. Taip atrodo pradedančiajam.
Profesionalai žino, kad šiuo metu iš tikrųjų yra vykdoma instrukcija specialia užklausų kalba – SQL. Faktas yra tai, kad „Access“ nėra vienintelė duomenų bazių valdymo sistema (DBVS). Gal kas girdėjote apie tokias DBVS internete kaip MySQL, FreeBSD??? „Access“ tiesiog siūlo labai patogią sąsają darbui su duomenų baze, o kitose valdymo sistemose nėra jokio mygtuko su šauktuku. Bet visada yra specialus langas, kuriame galite rašyti SQL instrukcijas.
„Access“ taip pat leidžia redaguoti užklausas SQL teiginio režimu:



SQL kalbos taisyklės nėra tokios sudėtingos. Tai galite pamatyti patys! Pateikite paprastą atrankos užklausą (pavyzdžiui, parodykite šuns, vardu Harry, vardą, veislę ir gimimo datą). Dabar atidarykite Harry paieškos užklausą SQL režimu!
Instrukcijos labai paprastos:
PASIRINKTI 1 lauką, 2 lauką,…
IŠ lentelės1, lentelės2,…
KUR sąlyga1, sąlyga2,…


Dabar atidarykite naujinimą, pakeiskite, ištrinkite užklausas (quDelDog, quUpdateDog, quaAddDog) SQL režimu ir užsirašykite jų SQL teiginių šablonus ant popieriaus lapo (kaip ką tik buvo padaryta pasirinkus užklausą).


Užklausos su parametru, užklausos grupavimui, užklausos su skaičiavimais yra tos pačios SQL užklausos, bet tik su šiek tiek sudėtingesnėmis pasirinkimo sąlygomis. SQL kalba yra nepakeičiamas įrankis tiems, kurie dirba su duomenų bazėmis!

Užduotys

Štai temos, kurias aptarėme:
- paprastos ir sudėtinės atrankos sąlygos
- LIKE operatorius
- pasirinkimas iš kelių lentelių
- išraiškos kūrėjas
- užklausos su parametru
- prašymai dėl grupavimo
- prašymai atnaujinti, pridėti, ištrinti
- SQL užklausų kalba.


Jų yra daug! Tačiau kai juos įvaldysite, duomenų bazėje galėsite rasti bet kokią informaciją.


Pasitikrink savo žinias! Savo duomenų bazėje paleiskite šias užklausas (arba pervardykite jau įvykdytas, kad jų pavadinimai atitiktų užduočių pavadinimus):

1. pavyzdys

quSelectDog: Raskite visus Shar-Peis ir Gordon seterius iš regionų (NE iš Maskvos); naudokite operatorių „nelygu“.

2. Patinka operatorius

quLike: Raskite visus MTS abonentus (tuos, kurių mobiliojo telefono numeris prasideda 8(916)…).

3. posakius

quEvalText: Parašykite posakį, kuris sudaro pavardę su inicialais iš pavardės, vardo ir patronimo. Ivanovas Ivanas Ivanovičius -> Ivanovas I.I.
quEvalDate: parašykite išraišką, kuri apskaičiuoja, kiek šuniui metų pagal gimimo datą.
quEvalIif: parašykite posakį, kuris pagal amžių nustato, kokio amžiaus šuo priklauso: „šuniukas“ - iki metų; „jaunesnysis“ - nuo vienerių iki dvejų metų; „Senjoras“ – vyresnis nei dvejų metų.
Papildymas: Vienoje užduotyje apskaičiuokite šuns amžių vienu, o kitokiu būdu: 1) iš einamųjų metų atimkite šuns gimimo metus; 2) naudodami DateDiff funkciją, apskaičiuokite, kiek dienų praėjo nuo gimimo iki šiandien.

4.parametras

qParameter: sukurkite užklausą, kuri pateiks visus šunis pagal savininko pavardę, kuri yra nemokamas parametras.

5. grupavimas

quGroup: Sužinokite, kuris šuo sukėlė prieštaringiausias teisėjų nuomones.

6. duomenų bazės redagavimas

Prieš pat parodą savininkas Gorokhovetsas išvyko į nuolatinę gyvenamąją vietą (nuolatinę gyvenamąją vietą) Vokietijoje ir visus šunis perdavė savo draugui Michailui Igorevičiui Karpovui. Reikalinga:
1) quaAddOwner: pridėti įrašą apie naująjį savininką;
2) quUpdateOwner: pakeisti Gorochoveco šunų savininko ID į Karpovo ID;
3) quDelOwner: pašalinti Gorokhovets iš duomenų bazės.


Laukiu jūsų duomenų bazių su atliktomis užduotimis, taip pat SQL instrukcijų šablonų atnaujinimo, keitimo ir ištrynimo užklausoms.

Pagrindinis tikslas kuriant duomenų bazę yra tvarkingai sutvarkyti informaciją lentelėje, išvengiant informacijos pertekliaus ir pasiekiant logiką ją derinant. Natūralu, kad vartotojui neįdomūs visi dokumentuose esantys duomenys, o klientui labiau rūpi konkreti informacija, o ne jos vieta. Būtent tokiam informacijos filtravimui yra užklausos. „Access“ pasirinkimo užklausa yra viena iš dažniausiai naudojamų, leidžianti išgauti reikiamą informaciją, atlikti skaičiavimus, kurti kryžmines nuorodas, tačiau nekeičiant informacijos pagrindinėse lentelėse.

Kaip sukurti pasirinkimo užklausą programoje „Access“ naudojant dizainerį

Pavyzdžiui, pabandykite sudaryti darbuotojų sąrašą, nurodant jų pareigas, atlyginimą ir priedus pagal darbo stažą. Natūralu, kad dominantys duomenys bus išdėstyti skirtingose ​​lentelėse, todėl Access pasirinks iš susijusių objektų. Norėdami jį sukurti, atlikite šiuos veiksmus:

Paveikslėlyje aiškiai matyti, kad duomenys nėra užsakyti, o peržiūrėti juos tokia forma nėra labai patogu. Kuriant užklausą reikia nepamiršti šio parametro. Norėdami tai padaryti, turėtumėte naudoti eilutę formoje, pavadintoje „Rūšiavimas“, su kuria galite sudaryti leidimų sąrašą pradedant nuo didžiausios iki minimalios vertės.

Be to, programoje „Access“ galite sukurti atrankos užklausą su sąlyga: norėdami tai padaryti, laukelyje „Pasirinkimo sąlygos“ turite nustatyti reikiamą parametrą (tam tikrą atlyginimo sumą, priedus peržiūrėti tik projektų inžinieriams ir pan.).