Страницы

Поиск по вопросам

понедельник, 24 сентября 2018 г.

Сортировка SQL. ORDER BY

Оператор ORDER BY позволяет отсортировать извлекаемые значения по определенному столбцу:
1
2
3
SELECT *
FROM Products
ORDER BY ProductName
В данном случае строки сортируются по возрастанию значения столбца ProductName:
ORDER BY и сортировка в T-SQL
Сортировку также можно проводить по псевдониму столбца, который определяется с помощью оператора AS:
1
2
3
SELECT ProductName, ProductCount * Price AS TotalSum
FROM Products
ORDER BY TotalSum
ORDER BY и сортировка в MS SQL Server 2016
По умолчанию применяется сортировка по возрастанию. С помощью дополнительного оператора DESC можно задать сортировку по убыванию.
1
2
3
SELECT ProductName
FROM Products
ORDER BY ProductName DESC
ORDER BY DESC и сортировка по убыванию в T-SQL
По умолчанию вместо DESC используется оператор ASC:
1
2
3
SELECT ProductName
FROM Products
ORDER BY ProductName ASC
Если необходимо отсортировать сразу по нескольким столбцам, то все они перечисляются после оператора ORDER BY:
1
2
3
SELECT ProductName, Price, Manufacturer
FROM Products
ORDER BY Manufacturer, ProductName
В этом случае сначала строки сортируются по столбцу Manufacturer по возрастанию. Затем если есть две строки, в которых столбец Manufacturer имеет одинаковое значение, то они сортируются по столбцу ProductName также по возрастанию. Но опять же с помощью ASC и DESC можно отдельно для разных столбцов определить сортировку по возрастанию и убыванию:
1
2
3
SELECT ProductName, Price, Manufacturer
FROM Products
ORDER BY Manufacturer ASC, ProductName DESC
Сортировка по нескольким столбцам в T-SQL
В качестве критерия сортировки также можно использовать сложно выражение на основе столбцов:
1
2
3
SELECT ProductName, Price, ProductCount
FROM Products
ORDER BY ProductCount * Price
Сортировка по сложному выражению в ORDER BY в T-SQL

Комментариев нет:

Отправить комментарий