Сортування в sql по одному полю, потім по іншому

Сортування в SQL по одному полю, потім по іншому

Я вже якось писав про сортування відразу по декількох полях в SQL. Але іноді потрібно сортування не відразу по декількох полях, а спочатку по одному, потім по-іншому. Наприклад, в курсі, який я зараз записую, мені треба було вивести 8 новинок з таблиці і впорядкувати ці 8 новинок за ціною. Не відразу по новизні і ціною, а саме спочатку новинки, а потім сортування. Давайте з Вами розберемо, як робиться сортування в SQL спочатку по одному полю, потім по іншому.




Безумовно, можна просто витягти 8 новинок, а потім в PHP вже впорядкувати за ціною, але це досить сумнівне рішення. Ось як це можна зробити відразу в SQL:

Відео: ORDER BY - Сортування в мові запитів Transact-SQL

SELECT * FROM
(SELECT * FROM `table` ORDER BY `date` DESC LIMIT 8) a
ORDER BY
`price`



Як бачите, вийшов такий досить хитрий запит. Ми після першого FROM не писали назву таблиці, а вказали безліч даних, отриманих вибіркою з іншої таблиці. І ось з цієї іншої таблиці вибирається 8 новинок, а потім в отриманому безлічі йде вже сортування по ціні.

Відео: Модуль 02 Обмеження і сортування даних

Таким чином, PHP нам не потрібен був, хоча абсолютна більшість в такій ситуації до цього обов`язково б вдалися.

Поділися в соціальних мережах:

Схожі
Сортування в excel.Сортування в excel.
Сортування за датою в excel.Сортування за датою в excel.
Сортування в excel з кількох стовпців і рядків.Сортування в excel з кількох стовпців і рядків.
Сортування в word.Сортування в word.
Сортування двовимірного масиву на phpСортування двовимірного масиву на php
Команда sort в linuxКоманда sort в linux
Запит sql для сортування результату вибіркиЗапит sql для сортування результату вибірки
Пошук по базі даних з сортуванням за релевантністюПошук по базі даних з сортуванням за релевантністю
Як зробити сортування в excel за датою.Як зробити сортування в excel за датою.
Індекси в mysqlІндекси в mysql
» » Сортування в sql по одному полю, потім по іншому