美好的一天,
在我正在运行的WHILE语句中,我正在尝试的一个变量赋值是将子查询与row_number()结合使用,从列中提取每个特定的ID,并将另一个表中的货币值相加,每个ID。我在MS SQL 2008中工作。
这是我到目前为止的查询:
SET @value =(SELECT PaymentAmount FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY C.CategoryID ASC) AS RowNum,
SUM(O.PaymentAmount)
FROM Orders O
INNER JOIN OrderDetails OD ON O.OrderID = OD.OrderID
INNER JOIN Products_Joined PJ ON OD.ProductCode = PJ.ProductCode
INNER JOIN Categories_Products_Link CPL ON PJ.ProductID = CPL.ProductID
INNER JOIN Categories C ON CPL.CategoryID = C.CategoryID
GROUP BY C.CategoryID
) AS Num
WHERE RowNum = @counter)
我遇到的错误是关于没有为'Num'的第2列指定列。 思考?想法?谢谢你的时间!