Клаузата ORDER BY в Access сортира получените записи от заявката в определено поле или полета във възходящ или низходящ ред.
Синтаксис
SELECT списък_полета
FROM таблица WHERE критерии_за_избор [ORDER BY поле1 [ASC | DESC ][, поле2 [ASC | DESC ]][, ...]]]Командата SELECT, съдържаща клауза ORDER BY, има следните части:
Част |
Описание |
списък_полета |
Името на полето или полетата, които искате да бъдат извлечени заедно с всички псевдоними на полета, SQL агрегатни функции, предикати за селекция (ALL, DISTINCT, DISTINCTROW или TOP) или други опции на командата SELECT. |
таблица |
Името на таблицата, от която са извлечени записите. |
критерии_за_избор |
Критерии за избор. Ако командата съдържа клауза WHERE, ядрото на базата данни на Microsoft Access подрежда стойностите след прилагане на условията WHERE към записите. |
поле1, поле2 |
Имената на полетата, по които да се сортират записите. |
Забележки
Клаузата ORDER BY не е задължителна. Ако обаче искате данните да се покажат в сортиран ред, трябва да използвате ORDER BY.
Редът на сортиране по подразбиране е във възходящ ред (от A до Я, от 0 до 9). И двата примера по-долу сортират имената на служителите по фамилно име:
SELECT LastName, FirstName
FROM Employees ORDER BY LastName;
SELECT LastName, FirstName
FROM Employees ORDER BY LastName ASC;
За да сортирате в низходящ ред (от Я до А, от 9 до 0), добавете запазената дума DESC в края на всяко поле, което искате да сортирате в низходящ ред. Следният пример избира заплати и ги сортира в низходящ ред:
SELECT LastName, Salary
FROM Employees ORDER BY Salary DESC, LastName;
Ако укажете поле, което съдържа данни от тип "Паметна бележка" или "OLE обект", в клаузата ORDER BY, ще възникне грешка. Ядрото на базата данни на Microsoft Access не сортира по полета от тези типове.
ORDER BY обикновено е последният елемент в една SQL команда.
Можете да включвате допълнителни полета в клаузата ORDER BY. Записите се сортират първо по първото поле, посочено след ORDER BY. Записите, които имат еднакви стойности в това поле, се сортират след това по стойността във второто посочено поле и т.н.