ORDER BY SQL Server

В этом учебном пособии вы узнаете, ак использовать оператор ORDER BY в SQL Server (Transact-SQL) с синтаксисом и примерами.

Описание

Оператор ORDER BY SQL Server (Transact-SQL) используется для сортировки записей в вашем результирующем наборе. ORDER BY может использоваться только в SELECT предложениях.

Синтаксис

Синтаксис ORDER BY в SQL Server (Transact-SQL):

SELECT expressions
FROM tables
[WHERE conditions]
ORDER BY expression [ ASC | DESC ];

Параметры или аргументы

expressions - столбцы или вычисления, которые вы хотите получить.
tables - таблицы, из которых вы хотите получить записи. Должна быть хотя бы одна таблица, перечисленная в предложении FROM.
WHERE conditions - необязательный. Условия, которые должны быть выполнены для выбранных записей.
ASC - необязательный. Он сортирует результирующий набор в порядке возрастания по expressions (по умолчанию, если атрибут ASC явно не указан).
DESC - необязательный. Он сортирует результирующий набор в порядке убывания по выражению.

Примечание

  • Если атрибут ASC или DESC не указан в предложении ORDER BY, результаты будут отсортированы по выражению в порядке возрастания. Это эквивалентно выражению ORDER BY ASC.

Пример сортировки без использования атрибута ASC / DESC.

Предложение ORDER BY SQL Server может использоваться без указания значения ASC или DESC. Когда этот атрибут опущен в предложении ORDER BY, порядок сортировки по умолчанию равен ASC или по возрастанию.
Например:

Этот пример ORDER BY SQL Server возвратит все записи, отсортированные по полю last_name, в порядке возрастания и будет эквивалентен следующему предложению ORDER BY:

Большинство программистов опускают атрибут ASC при сортировке в порядке возрастания.

Пример сортировки по убыванию.

При сортировке результирующего набора в порядке убывания вы используете атрибут DESC в предложении ORDER BY.
Например:

Этот пример SQL Server ORDER BY возвращает все записи, отсортированные по полю last_name, в порядке убывания.

Пример сортировки по относительной позиции.

Вы также можете использовать предложение ORDER BY SQL Server для сортировки по относительной позиции в наборе результатов, где первое поле в результирующем наборе равно 1. Следующее поле равно 2 и так далее.
Например:

Этот пример возвращает все записи, отсортированные по полю last_name, в порядке убывания, так как поле last_name находится в позиции №1 в результирующем наборе и будет эквивалентно следующему предложению ORDER BY:
SELECT last_name
FROM employees
WHERE last_name = 'Пеньков'
ORDER BY last_name DESC;

Пример использования атрибутов ASC и DESC.

При сортировке набора результатов с помощью предложения ORDER BY SQL Server вы можете использовать атрибуты ASC и DESC в одном выражении SELECT.
Например:

Этот пример будет возвращать все записи, отсортированные по полю last_name в порядке убывания, с вторичным сортированием по first_name в порядке возрастания.