Сортировка по диапазону цен

Задача: получить из БД интернет-магазина товары в следующем порядке - сначала идут товары у которых цена составляет от 6 000 до 20 000 руб, далее все остальные в порядке возрастания цены.

Таблица товаров `prods` имеет следующий вид:

Решение:

SELECT
	*,
	IF(`price` BETWEEN 6000 AND 20000, 1, 0) AS `price_sort` 
FROM 
	`prods`
ORDER BY 
	`price_sort` DESC, `price`
SQL

В результате запроса получаем нужную сортировку:

13.10.2017, обновлено 30.08.2019 869
Предыдущая запись Полезные запросы в MySQL

Поделится

Другие публикации

Два примера чтения xml файлов, которые обновляют цены и остатки в базе данных интернет магазина.
Изображения нужно сжимать для ускорения скорости загрузки сайта, но как это сделать? На многих хостингах нет...
Сборник запросов для поиска, изменения и удаления дублей в таблице MySQL по одному и нескольким полям.
Класс значительно упрощает работу с PDO, сокращает код. Реализован на статических классах и не требует создание...
В статье приведены основные примеры работы с расширением PHP PDO. Такие как подключение к БД, получение, изменение и...
В статье представлены некоторые операции над ценами - наценки и скидки, средняя цена, прибыльность за единицу товара.