Какой оператор SQL используется для сортировки результатов запроса?

«Какой оператор SQL используется для сортировки результатов запроса?» — вопрос из категории Базы данных и SQL, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для сортировки в SQL используется оператор ORDER BY.

Ключевые особенности:

  • Сортирует результирующие строки по одному или нескольким столбцам.
  • Поддерживает два направления сортировки:
    • ASC (по возрастанию) — значение по умолчанию.
    • DESC (по убыванию).
  • Можно сортировать как по имени столбца, так и по его порядковому номеру в SELECT (хотя первый способ предпочтительнее для читаемости).

Примеры:

  1. Простая сортировка по одному столбцу:

    SELECT id, name, salary FROM employees
    ORDER BY salary DESC;

    Возвращает сотрудников, отсортированных от самой высокой к самой низкой зарплате.

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

    SELECT id, name, department, salary FROM employees
    ORDER BY department ASC, salary DESC;

    Сначала сортирует по отделу в алфавитном порядке (A-Z), а внутри каждого отдела — по зарплате по убыванию.

  3. Сортировка по выражению:

    SELECT id, name, (salary * 1.1) AS projected_salary FROM employees
    ORDER BY projected_salary DESC;

    Сортирует по вычисляемому столбцу.