Přihlásit se pomocí účtu Microsoft
Přihlaste se nebo si vytvořte účet.
Dobrý den,
Vyberte jiný účet.
Máte více účtů.
Zvolte účet, pomocí kterého se chcete přihlásit.
Jazyk SQL v Accessu: klauzule SELECT

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

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

Výběr polí: klauzule SELECT

Příkaz SELECT obvykle začíná klauzulí SELECT. Pomocí klauzule SELECT můžete zadat názvy polí obsahujících data, která chcete použít v dotazu. Místo nebo kromě polí můžete také použít výrazy. Jako pole můžete dokonce použít jiný příkaz SELECT, což se označuje jako poddotaz.

Dejme tomu, že chcete znát telefonní čísla svých zákazníků. Za předpokladu, že má pole sloužící k uložení zákaznických telefonních čísel název txtCustPhone, vypadá klauzule SELECT takto:

SELECT [txtCustomerPhone]

Název můžete uzavřít do hranatých závorek. Pokud název neobsahuje žádné mezery ani speciální znaky (třeba interpunkci), jsou hranaté závorky nepovinné. Pokud název obsahuje mezery nebo speciální znaky, musíte hranaté závorky použít.

Tip: Název, který obsahuje mezery, je srozumitelnější a dokáže vám při návrhu formulářů a sestav ušetřit čas, musíte se ale smířit s tím, že při vytváření příkazů SQL budete hodně psát. Při pojmenování objektů v databázi Accessu byste tuto skutečnost měli vzít do úvahy.

Pokud příkaz SQL obsahuje dvě nebo více polí se stejným názvem, musíte názvy polí v klauzuli SELECT doplnit o název zdroje dat jednotlivých polí. Pro zdroj dat, který používáte v klauzuli FROM, použijete stejný název.

Výběr všech polí

Když chcete zahrnout všechna pole z nějakého zdroje dat, můžete v klauzuli SELECT buď vypsat všechna pole individuálně, nebo použít zástupný znak hvězdička (*). Když použijete hvězdičku, Access při spuštění dotazu určí, jaká pole zdroj dat obsahuje, a zahrne do dotazu všechna tato pole. To zajišťuje aktuálnost dotazu, pokud se do zdroje dat doplní nová pole.

V příkazu SQL můžete hvězdičku použít u jednoho nebo několika zdrojů dat. Pokud použijete hvězdičku s několika zdroji dat, musíte spolu s hvězdičkou začlenit název zdroje dat, aby Access mohl určit, ze kterého zdroje dat chcete zahrnout všechna pole.

Předpokládejme, že chcete vybrat všechna pole z tabulky Orders, ale jenom e-mailovou adresu z tabulky Contacts. Klauzule SELECT by mohla vypadat takto:

SELECT Orders.*, Contacts.[E-mail Address]

Poznámka: Nezapomeňte sledovat, kde jste hvězdičku použili. Když později do zdroje dat přidáte nová pole, s kterými jste nepočítali, nemusí výsledky dotazu odpovídat tomu, co chcete.

Výběr rozdílných hodnot

Pokud víte, že váš příkaz vybere redundantní data, ale raději byste viděli jenom rozdílné hodnoty, můžete v klauzuli SELECT použít klíčové slovo DISTINCT. Dejme tomu, že každý z vašich zákazníků zastupuje několik různých účastníků, z nichž někteří používají stejné telefonní číslo. Pokud chcete zajistit, aby se každé telefonní číslo zobrazilo jenom jednou, bude klauzule SELECT vypadat následovně:

SELECT DISTINCT [txtCustomerPhone]

Použití zástupných názvů pro pole nebo výrazy: klíčové slovo AS

Popisek, který se zobrazuje u jakéhokoli pole v zobrazení Datový list, můžete změnit pomocí klíčového slova AS a aliasu pole v klauzuli SELECT. Alias pole je název, který přiřadíte nějakému poli v dotazu, aby byly výsledky srozumitelnější. Pokud například chcete vybrat data z pole s názvem txtCustPhone a toto pole obsahuje telefonní čísla zákazníků, můžete zlepšit srozumitelnost výsledků pomocí aliasu pole v příkazu SELECT následujícím způsobem:

SELECT [txtCustPhone] AS [Customer Phone]

Poznámka: Alias pole musíte použít, pokud v klauzuli SELECT použijete výraz.

Výběr pomocí výrazu

Někdy si chcete prohlédnout výpočty na základě dat nebo načíst jenom část dat nějakého pole. Dejme tomu, že na základě dat v poli BirthDate v databázi chcete vrátit rok, ve kterém se narodili vaši zákazníci. Klauzule SELECT by mohla vypadat takto:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

Tento výraz se skládá z funkce DatePart a dvou argumentů – "yyyy" (konstanty) a [BirthDate] (identifikátoru).

Jako pole můžete použít jakýkoli platný výraz, pokud pro danou jednu vstupní hodnotu vrátí tento výraz také jednu hodnotu.

Začátek stránky

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou jazyka?
Co ovlivnilo váš názor?
Po stisknutí tlačítka pro odeslání se vaše zpětná vazba použije k vylepšování produktů a služeb Microsoftu. Váš správce IT bude moci tato data shromažďovat. Prohlášení o zásadách ochrany osobních údajů.

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

×