0
SQL Server 2012.子查询返回多个值,错误消息512
我不知道如何让我的子查询工作。它返回多于1个不允许的值。我想要每个customerID的数量总和。 customerID
存在于tblOrder
中,QuantityOrdered
存在于LineItem
表中。
SELECT
CustomerID, ProductID,
SUM(QuantityOrdered) AS QuantitySum,
(SELECT (SUM(QuantityOrdered))
FROM LineItem
INNER JOIN tblOrder ON tblOrder.OrderID = LineItem.OrderID
GROUP BY CustomerID) as PRACTICE
FROM
tblOrder
INNER JOIN
LineItem LI ON tblOrder.OrderID = LI.OrderID
WHERE
OrderDate BETWEEN '2016-01-31' AND '2016-03-01'
GROUP BY
ProductID, CustomerID
ORDER BY
CustomerID
我知道第二个总和(QuantityOrdered)似乎是多余的,但我将它编辑为计算值,一旦我找出什么是错的。 – Iansberg
你的子查询将按客户ID分组,每个CustomerID都会返回一笔金额。因此,主查询的每一行都有多行子查询。 – artm
在您的子查询中,您按照CustomerID进行分组,因此对于每个客户,您将获得一个值 – Squirrel