SQL код скопирован в буфер обмена
Этот урок посвящен оператору `ORDER BY` в SQL, который используется для сортировки результатов запроса. Вы узнаете, как упорядочивать данные по возрастанию или убыванию, выполнять сортировку по нескольким столбцам и поймете значение сортировки для анализа данных. Освоение оператора `ORDER BY` необходимо для представления данных в логической последовательности и подготовки отчетов, где порядок записей имеет значение, например, список самых продаваемых товаров или хронологический журнал активности.
EN PT

Урок 2.5: Сортировка результатов

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

Оператор ORDER BY

Оператор ORDER BY добавляется в конец инструкции SELECT для сортировки результирующего набора на основе одного или нескольких столбцов.

Синтаксис

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;
  • column1, column2, ...: Столбцы, по которым вы хотите выполнить сортировку.
  • ASC: Сортирует данные по возрастанию (от меньшего к большему, от А до Я). Это значение по умолчанию.
  • DESC: Сортирует данные по убыванию (от большего к меньшему, от Я до А).

Сортировка по одному столбцу

Чтобы выполнить сортировку по одному столбцу, просто укажите его имя после ключевого слова ORDER BY.

Пример: Сортировка актеров по фамилии

Этот запрос извлекает всех актеров и сортирует их в алфавитном порядке по фамилии.

SELECT first_name, last_name
FROM actor
ORDER BY last_name;

Если вы хотите отсортировать их в обратном алфавитном порядке:

SELECT first_name, last_name
FROM actor
ORDER BY last_name DESC;

Сортировка по нескольким столбцам

Вы можете сортировать результаты по нескольким столбцам, перечислив их через запятую. База данных сначала выполняет сортировку по первому столбцу, а если в этом столбце есть одинаковые значения, она сортирует эти дубликаты по второму столбцу и так далее.

Пример: Сортировка по фамилии, затем по имени

Это полезно, когда несколько актеров имеют одинаковую фамилию.

SELECT first_name, last_name
FROM actor
ORDER BY last_name, first_name; -- Сначала по last_name, затем по first_name при совпадениях

Сортировка по псевдонимам столбцов или позициям

В большинстве диалектов SQL вы также можете выполнять сортировку по псевдониму столбца или его порядковому номеру в списке SELECT.

Пример: Сортировка по псевдониму

SELECT first_name || ' ' || last_name AS full_name
FROM actor
ORDER BY full_name;

Пример: Сортировка по позиции

-- Сортировка по второму столбцу (last_name)
SELECT first_name, last_name
FROM actor
ORDER BY 2;

Ключевые выводы этого урока:

  • Используйте ORDER BY для сортировки строк в результирующем наборе.
  • ASC (по умолчанию) сортирует по возрастанию; DESC сортирует по убыванию.
  • Вы можете выполнять сортировку по нескольким столбцам для более точного упорядочивания.
  • Сортировку также можно выполнять с использованием псевдонимов столбцов или их числовых позиций.

В следующем уроке мы изучим агрегатные функции, которые позволяют нам выполнять вычисления над наборами данных.