Menu
Coddy logo textTech

Сортировка результатов, часть 2

Часть раздела Основы путешествия по SQL на Coddy — урок 14 из 72.

При использовании ORDER BY в SQL вы можете сортировать данные по нескольким столбцам.

Например, рассмотрим следующую competition таблицу:

runner_idageavg_speed (m/s)
1473.65
2623.07
3576.82
4564.34
5254.93
6403.94
7236.58
8403.43
SELECT *
FROM competition
WHERE age < 50
ORDER BY age DESC, avg_speed DESC

Этот запрос будет:

  1. Сначала отсортирует все записи по age в убывающем порядке (от наибольшего к наименьшему)
  2. Если две или более записи имеют одинаковый age, то затем отсортирует эти конкретные записи по avg_speed в убывающем порядке (от наибольшего к наименьшему)

Результат:

runner_idageavg_speed (m/s)
1473.65
6403.94
8403.43
5254.93
7236.58
challenge icon

Задание

Легко

Доступные таблицы и столбцы:

  • feathers: id, weight, area

Верните все id после упорядочивания их по area в порядке убывания. Если перья имеют одинаковую area, сортируйте их по weight в порядке возрастания.

Шпаргалка

Вы можете сортировать данные по нескольким столбцам с помощью ORDER BY. Первый указанный столбец имеет приоритет, а последующие столбцы используются как критерии разрешения ничьих:

SELECT *
FROM competition
ORDER BY age DESC, avg_speed DESC

Это приведет к:

  1. Сначала сортировке по age в порядке убывания
  2. Если записи имеют одинаковый age, то сортировке по avg_speed в порядке убывания

Попробуйте сами

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы