Mysql сортировка числового поля за исключением нулевых значений

lara_

Новичок
Доброе утро.
Вопрос связан с интернет-магазином, в кот есть возможность сортировать товары по цене (или в порядке возр., или в порядке убыв.). НО есть товары, у кот цена = 0. Такие товары должны идти в последнюю очередь ВСЕГДА.
Вопрос в том, как это осуществить.

Написала запрос
select * from tblArticles order by CASE Price WHEN 0 THEN 999999 END
Система выводит список товаров, упорядоченных по цене. Если цена = 0, товар выводится в последнюю очередь.
НО, если сортировать товары по убыв. - эти товары идут первыми. А мне нужно, чтобы товары с ценой 0 выводились последними вседа.
Если у кого-то есть идеи - буду рада помощи.
 

Вурдалак

Продвинутый новичок
Это бесплатные товары или просто с неопределённой ценой? Если последнее, то разумнее использовать NULL.
Код:
ORDER BY IF(Price = 0, 1, 0), Price [ASC|DESC]
 

Redjik

Джедай-мастер
Блин, не успел, делал подобное с наличием товара, запрос верный
 
Сверху