带有SUM函数的SQL Joint和Group两个表

时间:2017-07-25 20:47:19

标签: sql-server tsql

我有两张桌子:

SELECT P.ProductID, P.Quantity, SUM(OL.Amount)
FROM atbl_Sales_Products AS P
LEFT JOIN atbl_Sales_OrdersLines AS OL ON OL.ProductID = P.ProductID 
GROUP BY P.ProductID

我想加入两张桌子。结果应为 - 产品ID(分组依据),OrdersLines表中所有金额的数量和总和。

到目前为止我得到了这个:

{{1}}

这会产生错误:

  

列' atbl_Sales_Products.Quantity'在选择列表中无效   因为它不包含在聚合函数或   GROUP BY子句。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

嗯,根据你的需要,有两种方法可以写这个

将数量添加到聚合...

powershell

将数量添加到分组

SELECT 
   P.ProductID, 
   SUM(P.Quantity), 
   SUM(OL.Amount)
FROM atbl_Sales_Products AS P
LEFT JOIN atbl_Sales_OrdersLines AS OL ON OL.ProductID = P.ProductID 
GROUP BY P.ProductID