我有一个查询
SELECT SUM(product.price)
FROM cart, product
WHERE cart.idUser = :idUser AND cart.idProduct = product.id
如果某人以一个订单购买了2个相同的product,则此查询的总和仅为price的1倍。 例如:订购的3个相同product= 3 * 10 $,查询仅返回10 $
如果有人购买了2种不同的product,则查询效果很好。 例如:2个不同的商品= 1 * 5 $ AND 1 * 10 $,查询返回15 $
我有这些表:
用户
带有列的订单:id,id用户,值
带列的购物车:id用户,idproduct,数量
带列的product:id,名称,price
分析解答
price乘数量
SELECT SUM(quantity * product.price)
FROM cart c
JOIN product p ON c.idProduct = p.id
WHERE cart.idUser = :idUser
并在上述查询中使用现代JOIN