我有一个包含以下数据的表:
product_id qty price_reduction
1 1 5
1 2 10
1 3 15
如果qty大于3,我如何获得最大降价(-15)。现在我使用这个查询,它不会做我想要做的事情,原因很明显:
SELECT price_reduction
FROM table
WHERE product_id = 1
AND qty = '$qty'
LIMIT 1
感谢您的帮助。
发布于 2018-07-19 05:45:14
如果你只想得到一个结果,那么只把结果过滤到那些<= :qty
,按qty DESC
排序,并将结果限制为一个,应该是可行的。
SELECT price_reduction
FROM table
WHERE product_id = 1
AND qty <= :qty
ORDER BY qty DESC
LIMIT 1
这是一个有效的SQL Fiddle。
https://stackoverflow.com/questions/51411356
复制相似问题