我有一张table叫 orders
每行存储一个订单或购买。以下是其数据示例:
在上表中,每个 id
对应于订单。 product_id
是在交易中购买的产品的id。注意有一个列叫做 quantity
它存储每个订单上购买的产品数量。我需要的是一个查询,返回按 product_id
. 这就是我迄今为止所做的:
SELECT COUNT(id), `product_id` FROM `orders` GROUP BY `deal_id`;
结果如下:
问题是结果忽略了列 quantity
. 我需要以一种考虑到 quantity
. 谢谢您。
2条答案
按热度按时间lc8prwob1#
按产品划分的销售额如下所示:
您正在学习sql,以下是一些建议:
总是限定你的列名,这样你——或者其他人——就知道它们来自哪些列。
在聚合查询中,将未聚合的列放在第一位(除非您有充分的理由这样做)。
在聚合查询中,确保未聚合的列与
GROUP BY
柱。如果未聚合的列是第一列,则更简单。5rgfhyps2#
正如giorgos betsos和barmar所建议的,这就是解决方案: