Не совсем понятен вопрос.
Из того что я понял, могу предложить 2 вариант (сорри, но представленный "как надо" не объясняет как сортировать):
1) SELECT list_price,sell_price FROM table ORDER BY sell_price DESC;
2) SELECT list_price,sell_price FROM table where list_price = '0' ORDER BY sell_price DESC
union
SELECT list_price,sell_price FROM table where list_price <> '0' ORDER BY sell_price DESC