我桌上有很多产品。有些产品有折扣,因此在price_old
字段中给出了产品的旧价格,price
字段有新的折扣价。
是否可以获得所有产品,按字段price_old
和price
之间的最大差异(折扣)排列?
答案 0 :(得分:2)
您可以执行以下操作:
SELECT *
FROM products
ORDER BY price_old - price DESC
将首先返回最大 price_old - price
差异的记录,然后返回具有第二大差异的记录等。
答案 1 :(得分:0)
select product,price,price_old
from table_name
order by (price_old-price) desc
答案 2 :(得分:0)
我认为你需要order by biggest discounted product
。你需要找到折扣%。
我没有找到任何有关该场景的答案,所以我在这里发帖:
SELECT
*,
((price_old - price)/price_old)*100 as 'Discount (%)'
FROM products
ORDER BY 2 DESC
答案 3 :(得分:0)
可能你可以像这样用来看看有多少折扣
Select *, (price_old-price) as diff from tablename order by diff desc
答案 4 :(得分:0)
select
*, old_price-price discount, (old_price-price)/old_price percent
from
product
order by
discount
desc;
折扣中的地方可以用百分比替换以显示折扣百分比。