Jazyk SQL v Accessu: Klauzule WHERE

Jazyk SQL v Accessu: Klauzule WHERE

Toto je jeden ze sady článků o jazyku SQL v Accessu. Tento článek popisuje, jak se používá klauzule WHERE, a pomocí příkladů ilustruje různé techniky, které můžete v klauzuli WHERE použít.

V příkazu SQL klauzule WHERE určuje kritéria, která hodnoty polí musí splňovat u záznamů obsahujících hodnoty, které se mají zahrnout do výsledků dotazu.

Přehled jazyka SQL v Accessu najdete v článku Jazyk SQL v Accessu: základní koncepty, slovník a syntaxe.

V tomto článku

Omezení výsledků pomocí kritérií

Syntaxe klauzule WHERE

Kombinování zdrojů dat pomocí klauzule WHERE

Omezení výsledků pomocí kritérií

Pokud chcete použít data k omezení počtu záznamů, které se vrací v dotazu, můžete použít kritéria. Kritérium dotazu se podobá vzorci – jedná se o řetězec, který může obsahovat odkazy na pole, operátory a konstanty. Kritéria dotazu jsou typem výrazu.

Následující tabulka obsahuje několik ukázkových kritérií s vysvětlením toho, jak fungují.

Kritérium

Popis

>25 and <50

Toto kritérium se dá použít u pole typu Číslo, jako je třeba pole Cena nebo JednotkyNaSkladě. Zahrnuje jenom 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 se dá použít u pole typu Datum a čas, jako je třeba pole DatumNarození. Do výsledku dotazu se zahrnou jenom 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 se dá použít u všech typů polí k zobrazení záznamů s hodnotou pole null.

Jak je patrné z předchozí tabulky, kritéria můžou v závislosti na datovém typu pole, u kterého se použijí, a na konkrétních požadavcích vypadat různě. Některá kritéria jsou jednoduchá a používají se v nich základní operátory a konstanty. Jiná jsou složitá a používají funkce, speciální operátory a obsahují odkazy na pole.

Důležité informace: Pokud se pole použije s agregační funkcí, nemůžete pro toto pole zadat kritéria v klauzuli WHERE. Místo toho musíte k zadání kritérií agregovaných polí použít klauzuli HAVING. Další informace najdete v článcích Jazyk SQL v Accessu: základní koncepty, slovník a syntaxe a Klauzule HAVING.

Syntaxe klauzule WHERE

V klauzuli WHERE v příkazu SELECT můžete použít kritéria dotazu.

Klauzule WHERE má následující základní syntaxi:

WHERE field = criterion

Předpokládejme například, že chcete získat telefonní číslo zákazníka, ale pamatujete si pouze to, že příjmení zákazníka je Novák. Místo procházení všech telefonních čísel v databázi můžete pomocí klauzule WHERE omezit výsledky a usnadnit si vyhledání požadovaného telefonního čísla. Za předpokladu, že příjmení jsou uložená v poli s názvem Příjmení, bude klauzule WHERE vypadat takto:

WHERE [LastName]='Bagel'

Poznámka: Kritéria v klauzuli WHERE nemusí být založena na ekvivalenci hodnot. Můžete použít i jiné porovnávací operátory, jako jsou větší než (>) nebo menší než (<). Příklad: WHERE [Cena]>100.

Kombinování zdrojů dat pomocí klauzule WHERE

Někdy se může stát, že chcete zkombinovat zdroje dat na základě polí, která sice mají shodná data, ale různé datové typy. Například v jedné tabulce může mít pole datový typ Číslo a vy ho chcete porovnat s polem v jiné tabulce, které má datový typ Text.

Mezi poli, která mají různé datové typy, nemůžete vytvořit spojení. Pokud chcete zkombinovat data ze dvou zdrojů dat na základě hodnot v polích, která mají různé datové typy, musíte vytvořit klauzuli WHERE s využitím klíčového slova LIKE. Tato klauzule pak použije jedno pole jako kritérium pro druhé pole.

Předpokládejme například, že chcete použít data z tabulky1 a tabulky2, ale jenom v případě, že data v poli1 (textovém poli v tabulce1) odpovídají datům v poli2 (číselném poli v tabulce2). Klauzule WHERE by vypadala nějak takto:

WHERE field1 LIKE field2

Další informace o vytváření kritérií pro použití v klauzuli WHERE najdete v článku Příklady kritérií dotazu.

Začátek stránky

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×