我正在尝试创建一个查询,它会在取消其初始价值后,给我一个产品的价值。
这是我到目前为止的简化版本:
SELECT
p.price
GROUP_CONCAT(d.amount) AS discounts
FROM products p
LEFT OUTER JOIN discounts d
ON d.product_id = p.id
GROUP BY p.id
discount.amount是十进制值。
编辑:例如,如果有两个相应的折扣,分别为10和15,初始产品价格为50,那么计算将返回25
在查询中是否存在我可以执行我想要的计算?
非常感谢任何建议。
感谢。
答案 0 :(得分:1)
有一个SUM()方法:
SELECT p.price,
p.price - COALESCE(SUM(d.amount), 0) as discounted_price,
GROUP_CONCAT(d.amount) AS discounts
FROM products p
LEFT OUTER JOIN discounts d
ON d.product_id = p.id
GROUP BY p.id