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


Оператор ORDER BY позволяет отсортировать извлекаемые значения по определенному столбцу:

1
2
3
SELECT *
FROM Products
ORDER BY ProductName

В данном случае строки сортируются по возрастанию значения столбца ProductName:


 

Сортировку также можно проводить по псевдониму столбца, который определяется с помощью оператора AS:

1
2
3
SELECT ProductName, ProductCount * Price AS TotalSum
FROM Products
ORDER BY TotalSum

 

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

1
2
3
SELECT ProductName
FROM Products
ORDER BY ProductName DESC


 

По умолчанию вместо 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


 

В качестве критерия сортировки также можно использовать сложно выражение на основе столбцов:

1
2
3
SELECT ProductName, Price, ProductCount
FROM Products
ORDER BY ProductCount * Price


 

Похожие новости

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

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.