Budem používať termín dotaz namiesto dopyt pretože Access nie je v Slovenskej verzii a názov dopyt sa v programe Access nenachádza. Možnosti vytvorenia dotazov sú v okne databázy: Vytvoriť dotaz v návrhovom zobrazení, alebo Vytvoriť dotaz pomocou sprievodcu (osobne väčšinou používam sprievodcu). Ďalšie možnosti sa zobrazia kliknutím na tlačítko Nový: Sprievodca jednoduchým dotazom, krížovým, sprievodca vyhľadávacím dotazom na duplicitné položky a chýbajúce záznamy. V okne databázy sú tlačítka na otvorenie dotazu a na návrh.

Otvorenie dotazu znamená, že sa zobrazia určité údaje v tabuľke (podľa vytvorených kritérií) a návrh zobrazí návrhovú mriežku , do ktorej zadávate ktoré polia chcete použiť a s akými kritériami. Návrh môžete robiť aj v zobrazení SQL, ktoré je ale pre bežných používateľov komplikovanejšie.
Pomocou dotazov môžete z jednej zdrojovej tabuľky vytvoriť na základe kritérií ďalšie tabuľky (neobsahujú údaje fyzicky, len ich zobrazujú, tzn. že vymazanie dotazu nespôsobí stratu údajov). Napr. z tabuľky faktúry, ktorá bude obsahovať údaje z piatich rokov podnikania môžete vytvoriť dotaz, ktorý bude zobrazovať len údaje z roku 2005, ďalší bude zobrazovať len z roku 2004 atd.V našom návrhu databázy je tabuľka "telo faktúry", ktorá neobsahuje celkovú cenu za predané kusy výrobkov. Keď chceme mať k dispozícii aj tento údaj, musíme urobiť dotaz so vzorcom. Kliknite na sprievodcu a zobrazí sa okno kde vyberáte z ktorej tabuľky chcete vytvoriť dotaz. Vyberte tabuľku T_Faktura_Telo a z dostupných polí vyberieme všetky kliknutím na dvojitú šípku, ktorá ich zobrazí vo vybraných poliach. Ak by ste chceli len niektoré, tak ich treba naklikať postupne.

Kliknutím na Ďalší sa zobrazí okno kde vyberáte či chcete podrobný alebo súhrnný dotaz. Podrobný zobrazí všetky údaje, súhrnný vytvorí napr. celkové súčty cien za jednotlivé faktúry. Necháme podrobný a klikneme na tlačítko Ďalší, ktoré zobrazí posledný krok. Tu stačí zadať názov dotazu D_Faktura_Telo a kliknúť na Dokončiť. Podľa toho či sme mali zakliknutú možnosť otvoriť sa buď dotaz otvorí, alebo sa zobrazí v návrhovom zobrazení. V našom prípade sme nič nemenili a preto sa zobrazia informácie v dátovom liste. Zatiaľ sú zobrazené presne tie isté údaje ako v tabuľke.
Potrebujeme tam pridať ešte výpočet celkovej ceny a preto musíme dotaz upraviť v návrhovom zobrazení. To urobíte kliknutím na tlačítko Návrh v okne databázy, alebo na paneli nástrojov (hneď prvé tlačítko). Zobrazí sa okno rozdelené na dve časti. V hornej je zobrazená tabuľka z ktorej sme vytvárali dotaz a v spodnej časti je návrhová mriežka, ktorá obsahuje názvy polí a prípadné kritéria.

Vypočítané pole vytvoríme v prázdnom stĺpci tak, že najprv napíšeme názov poľa „spolu:“ a pokračujeme vzorcom, ktorý vypočíta cenu za kus a počet kusov. Vyzerať to môže takto: spolu: [cena]*[pocet]. Sú dve možnosti vytvorenia tohto vzorca. Buď ho napíšete ručne, alebo naklikáte cez Tvorcu výrazov. Tento sprievodca obsahuje vľavo všetky databázové objekty, v strede polia z vybraného objektu a vpravo napr. konkrétne vstavané funkcie. Do hornej časti okna môžete pridať dvojklikom polia cena a pocet, nezabudnite potom vymazať položku výraz , ktorá sa pridá spolu s poľom ak ste už predtým zadali názov vypočítaného poľa ( spolu: «Výraz» [cena] * [pocet]).

Kliknutím na OK sa vzorec pridá do návrhovej mriežky. Kliknite o riadok nižšie, aby ste sa presvedčili či je všetko v poriadku. Ak by ste napr. zadali do vzorca navyše nejaký znak, napr. dve hviezdičky, tak program Vás upozorní na problém. Keď je vzorec vytvorený môžete sa prepnúť do zobrazenia dátového listu a budete vidieť nový stĺpec s vypočítanou celkovou cenou.
Pre zaujímavosť uvádzam aj zobrazenie SQL, ktoré ste vytvorili:
SELECT T_Faktura_Telo.ID_Rozpisu, T_Faktura_Telo.id_faktury, T_Faktura_Telo.polozka, T_Faktura_Telo.cena, T_Faktura_Telo.pocet, [cena]*[pocet] AS spolu FROM T_Faktura_Telo;
Vytvoríme ešte jeden dotaz, ktorý zlúči polia z dvoch tabuliek. Kliknite na sprievodcu a vyberte z tabuľky T_Faktura tieto polia: ID_Faktury, zakaznik, datum_vyst, uhradene, poznamka a z tabuľky T_Firmy tieto: Nazov, Adresa, Mesto, psc, ico. Ďalší postup je rovnaký ako v prvom dotaze, názov môžete zadať D_Faktura. Po zobrazení v dátovom liste budete vidieť údaje z dvoch tabuliek.
Vyskúšajte teraz zadať nejaký záznam (za predpokladu, že už máte v T_Firmy nejaké údaje a vytvorili ste aj relácie). V stĺpci zákazník zadajte číslo zákazníka a po presunutí kurzora do vedľajšieho stĺpca sa automaticky vyplnia údaje o zákazníkovi vo zvyšných stĺpcoch. Teraz Vám stačí už len zadať číslo faktúry, dátum vystavenia, príp. poznámku. Ak by ste chceli pridať dátum splatnosti, tak vytvorte vypočítané pole: splatnost: [datum_vyst]+14.
SQL zobrazenie je takéto:
SELECT T_Faktura.ID_Faktury, T_Faktura.zakaznik, T_Faktura.datum_vyst, [datum_vyst]+14 AS splatnost, T_Faktura.uhradene, T_Faktura.poznamka, T_Firmy.Nazov, T_Firmy.Adresa, T_Firmy.Mesto, T_Firmy.psc, T_Firmy.ico FROM T_Firmy INNER JOIN T_Faktura ON T_Firmy.ID_firmy = T_Faktura.zakaznik;
Pomocou dotazov môžete robiť s údajmi rôzne úkony (napr. zobrazenie cien väčších ako 150 urobíte pridaním >150 do riadku kritérií v návrhovom zobrazení), ktoré ale nie sú vhodné na priame zobrazovanie a prácu s nimi pre koncového používateľa. Preto sú v Accesse k dispozícii formuláre, ktoré koncovým používateľom zobrazujú údaje z dotazov a tabuliek a umožňujú im s nimi pohodlne priamo pracovať. O tom sa niečo dozviete nabudúce.