Oracle:数量列中的总和值“不是单个组的组函数错误”

时间:2019-05-19 12:14:54

标签: sql oracle

我有两个名为 PRODUCT LINEITEMS 的表,并且我尝试使用JOIN和GROUP BY的组合为每个产品的总行显示一行旁边出售的数量。这些表的结构如下:

  • 产品(部件号,描述,类别,单价,单价)
  • LINEITEM(订单号,行号,零件号,数量,单价

我已经了解到了,但是每个产品旁边显示的数量是所有产品中所有数量的总和,而不是生产线上该产品的销售数量之和。

SELECT p.description, sum(li.quantity)
FROM product p, linetem li
GROUP BY p.description;

1 个答案:

答案 0 :(得分:1)

从不FROM子句中使用逗号。

始终使用正确的,明确的,标准 JOIN语法。

您的查询缺少JOIN条条件。像这样:

SELECT p.description, sum(li.quantity)
FROM product p JOIN
     linetem li
     ON p.partno# = li.partno#
GROUP BY p.description;