ORDER BY
Сортирует результат запроса по одной или нескольким колонкам.
SELECT ... FROM table ORDER BY column1 [ASC|DESC], column2 [ASC|DESC];
Объяснение
Пример
-- Сортировка по нескольким полям SELECT name, salary, department FROM employees ORDER BY department ASC, salary DESC;
Связанные термины
Анекдоты по теме
— Почему ORDER BY RANDOM() медленный? — Присваивает случайное число каждой строке, потом сортирует всё. — Для таблицы в миллион строк? — Читает миллион, сортирует миллион. — Как быстро получить случайную строку? — SELECT * FROM big_table TABLESAMPLE SYSTEM(0.1) LIMIT 1; — Или через random() + keyset если знаешь диапазон ID.
Пользователь: — Почему мой запрос ничего не вернул? DBA: — А ты проверил регистр? Пользователь: — Да. DBA: — А пробелы? Пользователь: — Да. DBA: — А кодировку? Пользователь: — О господи...
Собеседование: — Напишите запрос для нахождения второй по величине зарплаты. Кандидат пишет подзапрос. — А можно без подзапроса? Пишет DENSE_RANK(). — А одной строкой? Пишет ORDER BY salary DESC LIMIT 1 OFFSET 1. Интервьюер: — Молодец. Это был вопрос на знание разных подходов, а не на правильный ответ.