MS ACCESS - DOTAZY DATABÁZOVÉ SYSTÉMY
K čemu jsou dotazy? Zobrazení, úprava a analýza dat z tabulek Příkaz k výběru nebo změně dat v tabulce na základě nastavených podmínek Vytvoření dotazu: Návrhové zobrazení Průvodce
Vytvoření dotazu „Vytvořit“ „Návrh dotazu“ Vložení tabulek Výběr polí Nastavení vlastností dotazu (např. setřídění)
Vytvoření dotazu
Dotaz – vybrané tabulky
Vytvoření dotazu – vložení tabulek Je využita vytvořená relace Zde definuji kritéria dotazu
Kritéria dotazu Kritéria Popis >25 and <50 Toto kritérium lze použít u pole typu Číslo, jako je například pole Cena nebo JednotkyNaSkladě. Toto kritérium zahrnuje pouze záznamy, ve kterých pole Cena nebo JednotkyNaSkladě obsahuje hodnotu větší než 25 a menší než 50. DateDiff ("rrrr", [DatumNarození], Date()) > 30 Toto kritérium je určeno pro pole typu Datum/čas, jako je například pole DatumNarození. Do výsledku dotazu jsou zahrnuty záznamy, ve kterých je počet roků mezi datem narození dané osoby a aktuálním datem větší než 30. Is Null Toto kritérium lze použít u všech typů polí ke zobrazení záznamů s hodnotou pole Null.
Příklad – dvojí kritéria současně
Příklad – jedno nebo druhé kritérium
Kritéria - texty LIKE „S*“ , NOT LIKE „S*“ začíná/nezačíná na S IS NULL je roven hodnotě NULL NOT „hodnota“ není roven zadané hodnotě „“ obsahuje prázdný řetězec (nikoli NULL) OR, AND logický součet, logický součin LIKE „[A-D]“ obsahuje písmena A,B,C,D IN („text1“, „text2“) obsahuje pouze hodnoty text1 nebo text2 LEN([nazev_pole]) = x délka textu v poli „nazev_pole“ je rovna x znaků LIKE „K???“ začíná na K a má 4 znaky Right([Země], 1) = "y„, Left([Země], 1) = „K"
Kritéria - čísla IN Matematické operátory - =, <, >, … BETWEEN x and y OR, AND LIKE
Kritérium na datum Přesně odpovídají určité hodnotě, například 2/2/2006. #2/2/2006# Vrátí záznamy transakcí provedených 2. února 2006. Nezapomeňte hodnotu data vložit mezi znaky #, aby bylo zřejmé, že jde o hodnotu kalendářního data a nikoli textový řetězec. Neodpovídají určité hodnotě, například 3/3/2006. Not #3/3/2006# Vrátí záznamy transakcí provedených jindy než 3. března 2006. Obsahují hodnoty předcházející určitému datu, například 2/2/2006. < #2/2/2006# Vrátí záznamy transakcí provedených před 2. únorem 2006. Chcete-li zobrazit transakce provedené k určitému datu či dříve, použijte operátor <= a nikoli operátor < .
Kritéria na datum – příklady použití funkcí DatePart("m", [DatumProdeje]) = 12 DatePart("č", [DatumProdeje]) = 1 čtvrtletí Date(), Now() aktuální datum Between Date() and Date()-6 Year([DatumProdeje]) = Year(Now()) And Month([DatumProdeje]) = Month(Now())
Kritéria na přílohy Chcete-li zahrnout záznamy, které neobsahují žádné přílohy, zadejte do řádku Kritéria hodnotu Is Null. Chcete-li zahrnout záznamy s přílohami, zadejte hodnotu Is Not Null.
Dotaz - využití Přes dotaz můžeme vkládat data (je-li definována relace, do více tabulek) Pomocí kritérii můžeme zobrazit jen určitá data, které vyhovují zadané podmínce; zobrazená data lze třídit
Samostatná práce Vytvořte dotaz nad tabulkami ODBERATEL a PRODEJ, které jsme vytvářeli v cvičení věnovaném relacím Dotaz vytvořte tak, aby pomocí něho šlo vkládat data