ORDER BY оператор MySQL

В этом учебном пособии вы узнаете, как использовать MySQL оператор ORDER BY с синтаксисом и примерами.

Описание

MySQL оператор ORDER BY используется для сортировки записей в вашем результирующем наборе.

Синтаксис

Синтаксис оператора ORDER BY в MySQL:

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

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

expressions — столбцы или вычисления, которые вы хотите получить.

tables — таблицы, из которых вы хотите получить записи. Должна быть хотя бы одна таблица, перечисленная в операторе FROM.

WHERE conditions — необязательный. Условия, которые должны быть выполнены для выбранных записей.
ASC — необязательный. Сортирует результирующий набор по expression в порядке возрастания (по умолчанию, если атрибут не указан).
DESC — необязательный. Сортирует результирующий набор по expression в порядке убывания.

Примечание

  • Если атрибуты ASC или DESC не указаны в операторе ORDER BY, результаты будут отсортированы по expression в порядке возрастания. Это эквивалентно выражению ORDER BY ASC.
  • Оператор ORDER BY может использоваться в предложениях SELECT, SELECT LIMIT и DELETE LIMIT в MySQL.

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

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

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

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

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

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

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

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

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

Этот пример MySQL ORDER BY вернет все записи, отсортированные по полю city, в порядке убывания, так как поле city находится в позиции №3 в результирующем наборе и будет эквивалентно следующему примеру ORDER BY:

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

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

Этот пример MySQL оператора ORDER BY будет возвращать все записи, отсортированные по полю supplier_city, в порядке убывания, с вторичной сортировкой по supplier_state в порядке возрастания.