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

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

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

Таблица товаров 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, обновлено 12.01.2021
5831

Комментарии

, чтобы добавить комментарий.

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

MySQL SELECT на примере каталога товаров
Несколько примеров SQL-запросов для интернет магазина или каталога товаров.
14439
+1
Создание товарной накладной в PHPExcel
Пример, как сформировать товарную накладную с помощью библиотеки PHPExcel. В результате получится файл в формате xlsx...
20810
+8
Примеры использования PDO MySQL
В статье приведены основные примеры работы с расширением PHP PDO. Такие как подключение к БД, получение, изменение и...
111806
+8
Сортировка массивов
В продолжении темы работы с массивами поговорим о типичной задаче – их сортировке. Для ее выполнения в PHP существует множество функций, их подробное описание можно посмотреть на php.net, рассмотрим...
73795
+7
Как сформировать большой файл для маркета
На сайте интернет-магазина с большим количеством товаров (от 8000) возникает проблема с формированием XML-фида для...
4468
+4
Интеграция с платежной системой PayKeeper в PHP
Платежная платформа PayKeeper позволяет принимать оплату заказов по ссылке, используя данный метод можно с легкостью...
10492
+1