Оператор SQL ORDER BY определяет порядок, в котором записи возвращаются запросом. Вы можете возвращать записи в возрастающем или убывающем порядке по значению любого столбца в таблице.
Упорядочивание результатов запроса упрощает поиск нужных записей.
Например, предположим, что вы хотите знать, какие сотрудники получили награды за наибольшее количество сотрудников месяца. Вы можете упорядочить свой запрос по этой точке данных, чтобы отобразить сотрудника, который первым получил наибольшее количество наград.
Оператор SQL ORDER BY упорядочивает результаты запроса в зависимости от ваших условий. В этом руководстве мы собираемся обсудить, как использовать оператор ORDER BY. Мы рассмотрим пример, который поможет вам освоить это ключевое слово.
SQL ORDER BY
Ключевое слово SQL ORDER BY упорядочивает результаты запроса. Вы можете упорядочить результаты в возрастающем или убывающем порядке по определённому столбцу или набору столбцов.
Вот синтаксис запроса ORDER BY:
SELECT name
FROM employees
ORDER BY name, joined ASC;
После оператора SQL SELECT мы указываем имя столбца, который хотим получить. Затем мы заявляем, что хотим получить данные из таблицы сотрудников.
Оператор ORDER BY упорядочивает наш запрос по имени и объединённым столбцам в порядке убывания. Наша база данных сначала будет отсортирована по именам в порядке убывания.
Если есть несколько человек с одинаковыми именами, то человек, который присоединился последним, появится внизу этих имён.
По умолчанию SQL упорядочивает столбец в порядке возрастания. Вы можете заказать столбец в порядке убывания или убывания с помощью предложения SQL ORDER BY.
Два возможных порядка сортировки:
- ASC: По возрастанию.
- DESC: По убыванию.
Вы можете использовать список столбцов, чтобы упорядочить несколько столбцов в разном порядке:
SELECT name
FROM employees
ORDER BY name ASC, joined DESC;
Этот запрос упорядочивает нашу таблицу по имени в возрастающем порядке. Тогда наш стол заказана вступил в порядке убывания.
Пример ORDER BY SQL
Давайте запустим пример запроса, чтобы продемонстрировать оператор ORDER BY в действии. Мы хотим получить список всех имён сотрудников и титулов для каждого сотрудника. Наша цель — отсортировать этот список в алфавитном порядке по именам сотрудников.
Чтобы получить эти данные, мы могли бы использовать следующий запрос:
SELECT name, title FROM employees ORDER BY name ASC;
Наш запрос сортирует набор результатов. Вот наш набор результатов в порядке возрастания:
имя | заглавие |
Алексис | Сотрудник по продажам |
Джефф | Старший специалист по продажам |
Ханна | Сотрудник по продажам |
Иона | Вице-президент по продажам |
Люк | Сотрудник по продажам |
Майк | Сотрудник по продажам |
Если вы хотите отсортировать в обратном алфавитном порядке, вы должны заменить оператор ASC на DESC.
Вы также можете сортировать по нескольким столбцам. Это может быть полезно, если в вашей таблице есть повторяющиеся значения, которые вы хотите отсортировать.
Например, предположим, что вы хотите узнать, кто работал на вас наиболее короткое время, в порядке их названий. Вы можете сделать это, используя следующий запрос:
SELECT name, title, hired_date FROM employees ORDER BY title, hired_date DESC;
Наш оператор ORDER BY сортирует результаты запроса. Вот результат нашего запроса:
имя | заглавие | hired_date |
Эмма | Директор по маркетингу | 2010-03-19 |
Алексис | Сотрудник по продажам | 2014-04-01 |
Ханна | Сотрудник по продажам | 2011-09-30 |
Майк | Сотрудник по продажам | 2010-03-19 |
Люк | Сотрудник по продажам | 2009-12-03 |
Джефф | Старший специалист по продажам | 2012-03-17 |
Иона | Вице-президент по продажам | 2010-07-23 |
Как видите, наша таблица отсортирована как по должности сотрудника, так и по дате его приёма на работу. Наш оператор ORDER BY успешно отсортировал записи.
Самым недавно нанятым торговым представителем был Алексис. Нашим торговым партнёром, который дольше всех работает в компании, является Люк. Мы также можем увидеть дату приёма на работу всех остальных сотрудников в порядке их должностей.
Вывод
Оператор SQL ORDER BY изменяет порядок, в котором записи возвращаются запросом. Вы можете заказать запрос в возрастающем или убывающем порядке. По умолчанию запрос возвращает данные в порядке возрастания.
Хотите узнать больше о SQL? Прочтите наше руководство по изучению SQL. Вы найдёте лучшие советы по изучению SQL. В нашем руководстве мы подготовили список учебных ресурсов, которые помогут вам развить необходимые навыки. навыки.