Klauzule ORDER BY v Accessu umožňuje seřadit výsledné záznamy dotazu podle zadaného pole nebo polí ve vzestupném nebo sestupném pořadí.
Syntaxe
SELECT seznam_polí
FROM tabulka WHERE výběrová_kritéria [ORDER BY pole1 [ASC | DESC ][, pole2 [ASC | DESC ]][, ...]]]Příkaz SELECT obsahující klauzuli ORDER BY se skládá z těchto částí:
Část |
Popis |
seznam_polí |
Název pole nebo polí, která se mají načíst, a dále jakékoli aliasy názvů polí, agregační funkce jazyka SQL, výběrové predikáty (ALL, DISTINCT, DISTINCTROW nebo TOP) nebo jiné parametry příkazu SELECT |
tabulka |
Název tabulky, ze které jsou načítány záznamy. |
výběrová_kritéria |
Výběrová kritéria. Pokud příkaz obsahuje klauzuli WHERE, seřadí databázový stroj Microsoft Access hodnoty po uplatnění podmínek WHERE na záznamy. |
pole1, pole2 |
Názvy polí, podle kterých se mají záznamy seřadit |
Poznámky
Klauzule ORDER BY je nepovinná. Pokud ale chcete, aby byla zobrazená data seřazená, musíte klauzuli ORDER BY použít.
Výchozí pořadí řazení je vzestupné (A až Ž, 0 až 9). Oba následující příklady seřadí jména zaměstnanců podle příjmení:
SELECT LastName, FirstName
FROM Employees ORDER BY LastName;
SELECT LastName, FirstName
FROM Employees ORDER BY LastName ASC;
Pokud chcete řadit v sestupném pořadí (Ž až A, 9 až 0), přidejte na konec každého pole, které chcete seřadit sestupně, rezervované slovo DESC. Následující příklad vybere mzdy a seřadí je v sestupném pořadí:
SELECT LastName, Salary
FROM Employees ORDER BY Salary DESC, LastName;
Pokud v klauzuli ORDER BY určíte pole, které obsahuje data typu Memo nebo Objekt OLE, dojde k chybě. Databázový stroj Microsoft Access neřadí podle polí těchto typů.
ORDER BY je obvykle poslední položkou v příkazu SQL.
Do klauzule ORDER BY můžete zahrnout další pole. Záznamy se napřed seřadí podle prvního pole uvedeného za klauzulí ORDER BY. Záznamy, které mají v tomto poli shodné hodnoty, se pak seřadí podle hodnoty v druhém uvedeném poli, a tak dále.