我有下表:
product_id | price | discountPrice
1 | 15 | 12
2 | 13 | 0
3 | 20 | 6
我想按折扣价格对结果进行排序,但如果某些product_id的discountPrice等于0,则此product_id应按价格排序。
预期结果:
product_id | price | discountPrice
3 | 20 | 6
1 | 15 | 12
2 | 13 | 0
发布于 2015-11-12 17:01:43
使用起来很简单,SELECT * FROM yourtable BY discountPrice
DESC,price
DESC
发布于 2015-11-12 17:12:39
也许你是指这个..。
select *
from yourtable
order by if(discountPrice=0,price,discountPrice) descending;
在这种情况下,产品是以最低可用价格的顺序出来的。而不是在排序列表的最低端对没有折扣的所有产品进行分组。它们出现在价格相近的产品附近。
https://stackoverflow.com/questions/33667591
复制相似问题