T-SQL聚合函数逻辑错误

时间:2010-04-13 12:41:32

标签: sql tsql

好的我有一个包含重复的Reciept数字和a的数据表 每条记录的交易价值,我需要简单列出总数 每个独特的Reciept号码,这显然是一个简单的问题,但我 我错过了什么。

任何帮助都非常适合

SELECT Gf_Receipt_number AS Reciept,
       SUM (Gf_Amount) AS Total
  FROM [TestP].[dbo].[Gf]
 WHERE Gf_Receipt_number IS NOT NULL
 GROUP BY Gf_Amount

可能有助于提及我收到的错误是:

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

3 个答案:

答案 0 :(得分:7)

您需要按Gf_Receipt_number而不是Gf_Amount

进行分组

GROUP BY子句指示使用哪些列来区分一组记录与另一组记录,而聚合函数中使用的列(例如SUM(Gf_Amount))确定这些记录中的其他列如何组合成单个值

答案 1 :(得分:1)

你应该改为GROUP BY Gf_Receipt_number。

答案 2 :(得分:1)

您希望将GF_Receipt_number放入您的组中以使错误消失。 Group By Refrence