ОсновыНачальный
ORDER BY
Сортирует результат запроса по одной или нескольким колонкам.
Синтаксис
SELECT ... FROM table ORDER BY column1 [ASC|DESC], column2 [ASC|DESC];Объяснение
ORDER BY выполняется последним в цепочке клаузул. Направление: ASC (по умолчанию) или DESC.
Важно: без ORDER BY порядок строк не определён — не полагайся на него. При одинаковых значениях добавляй уникальную колонку (обычно id) для стабильного порядка.
Пример
-- Сортировка по нескольким полям
SELECT name, salary, department
FROM employees
ORDER BY department ASC, salary DESC;Связанные термины
Анекдоты по теме
Пользователь: — Почему мой запрос ничего не вернул? DBA: — А ты проверил регистр? Пользователь: — Да. DBA: — А пробелы? Пользователь: — Да. DBA: — А кодировку? Пользователь: — О господи...
— Мой запрос работает 10 секунд. Как ускорить? — Покажи EXPLAIN ANALYZE. — Вот: Seq Scan, cost=0..999999. — Индекс. — Уже 0.5 секунды. — Теперь смотри на остальные узлы.
— Мой EXPLAIN показывает Seq Scan. — Добавь индекс. — Добавил. Всё равно Seq Scan. — Сколько строк в таблице? — 50. — Оптимизатор умнее тебя. При 50 строках индекс медленнее.