SQL,DISTINCT product_id,orderQuantity

时间:2013-10-03 08:50:09

标签: sql

以下是给出的问题:

显示产品代码列表以及每个代码的订购次数(注意,订单数量会影响订购的总次数);仅包含至少订购过一次的产品代码?

我试过以下

SELECT DISTINCT productId, orderQuantity 
FROM Order
WHERE (orderQuantity > 0);

该表提供了重复的产品ID。如何使用订单数量的SUM获取不同产品ID的表格?

1 个答案:

答案 0 :(得分:4)

我认为这就是你要找的东西:

SELECT productID, SUM(orderQuantity)
FROM Order
WHERE orderQuantity > 0
GROUP BY productID

您必须使用汇总函数(在本例中为SUM())来获取数量的总和,并希望按照您的情况productID将每个产品的总和进行分组。

要了解其工作原理,只需尝试从SELECT语句中删除GROUP BY语句和productID,查询将返回所有数量的SUM。

SELECT SUM(orderQuantity)
FROM Order
WHERE orderQuantity > 0

然后,如果只添加GROUP BY productID,您将获得为每种产品订购的数量总和。

SELECT SUM(orderQuantity)
FROM Order
WHERE orderQuantity > 0
GROUP BY productID

然后只需在SELECT语句中添加productID以了解显示的信息。