Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Запрос с сортировкой по цене или скидке
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Запрос с сортировкой по цене или скидке

Страниц (1): [1]
 

1. 3d_killer - 18 Июня, 2016 - 14:27:26 - перейти к сообщению
Не могу сообразить нужно составить запрос в таблицу
есть таблица table
в ней поля
price и price_diff

мне нужно запросить от туда товары с сортировкой по price (но если у товара не пустое поле price_diff то данный товар в сортировке использовать поле price_diff),
Надеюсь это не накладно по ресурсам
2. Мелкий - 18 Июня, 2016 - 14:55:49 - перейти к сообщению
Предположим, что пустое price_diff - это нормальный NULL. Тогда
CODE (SQL):
скопировать код в буфер обмена
  1. ORDER BY coalesce(price_diff, price)


Что-то другое - case или if.
По ресурсам - сортировка по индексу будет возможна только при наличии соответствующего функционального индекса. Но это если сортировка по индексу вообще возможна для запроса.

 

Powered by ExBB FM 1.0 RC1