Příkaz SELECT dává databázovému stroji Microsoft Access pokyn k vrácení informací z databáze jako sady záznamů.
Syntaxe
SELECT [predikát] { * | tabulka.* | [tabulka.]pole1 [AS alias1] [, [tabulka.]pole2 [AS alias2] [, ...]]}
FROM výraz_tabulky [, ...] [IN externí_databáze]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]
Příkaz SELECT se skládá z těchto částí:
Část |
Popis |
predikát |
Jeden z následujících predikátů: ALL, DISTINCT, DISTINCTROW nebo TOP. Predikát se používá k omezení počtu vrácených záznamů. Pokud žádný nezadáte, použije se výchozí predikát ALL. |
* |
Určuje, že se mají vybrat všechna pole ze zadané tabulky nebo tabulek. |
tabulka |
Název tabulky obsahující pole, ze kterých se mají vybrat záznamy. |
pole1, pole2 |
Názvy polí obsahujících data, která chcete načíst. Pokud zahrnete víc než jedno pole, budou se načítat v uvedeném pořadí. |
alias1, alias2 |
Názvy, které chcete použít jako záhlaví sloupců místo původních názvů sloupců v tabulce. |
výraz_tabulky |
Název tabulky nebo názvy tabulek obsahujících data, která chcete načíst. |
externí_databáze |
Název databáze obsahující tabulky ve výrazu_tabulky. Používá se, když tabulky nejsou v aktuální databázi. |
Poznámky
Databázový stroj Microsoft Accessu při provádění této operace prohledá zadanou tabulku nebo tabulky, extrahuje vybrané sloupce, vybere řádky, které splňují zadané kritérium, a seřadí nebo seskupí výsledné řádky podle určeného pořadí.
Příkazy SELECT nemění data v databázi.
SELECT je obvykle první slovo v příkazu SQL. Většina příkazů SQL jsou příkazy SELECT nebo SELECT...INTO.
Minimální syntaxe příkazu SELECT je:
SELECT pole FROM tabulka
Pomocí hvězdičky (*) můžete vybrat všechna pole v tabulce. Následující příklad vybere všechna pole v tabulce Employees:
SELECT * FROM Employees;
Pokud je nějaký název pole zahrnutý ve víc než jedné tabulce v klauzuli FROM, zadejte před něj název tabulky a operátor . (tečka). V následujícím příkladu je pole Department v tabulce Employees i v tabulce Supervisors. Příkaz SQL vybere oddělení z tabulky Employees a jména vedoucích z tabulky Supervisors:
SELECT Employees.Department, Supervisors.SupvName FROM Employees INNER JOIN Supervisors WHERE Employees.Department = Supervisors.Department;
Při vytváření objektu Recordset použije databázový stroj Microsoft Accessu název pole v tabulce jako název objektu Field v objektu Recordset. Pokud chcete použít jiný název pole nebo pokud název není implikován výrazem použitým ke generování pole, použijte Rezervované slovo AS. V následujícím příkladu se použije název Birth k pojmenování vráceného objektu Field ve výsledném objektu Recordset:
SELECT BirthDate AS Birth FROM Employees;
Pokud použijete agregační funkce nebo dotazy, které vracejí nejednoznačné nebo duplicitní názvy objektů Field, musíte pomocí klauzule AS určit alternativní název objektu Field. V následujícím příkladu se použije název HeadCount k pojmenování vráceného objektu Field ve výsledném objektu Recordset:
SELECT COUNT(EmployeeID) AS HeadCount FROM Employees;
Pomocí dalších klauzulí v příkazu SELECT můžete dál omezit a uspořádat vrácená data. Víc informací najdete v tématu nápovědy pro klauzuli, kterou chcete použít.