我得到一个'Sum'不是公认的内置函数名

时间:2013-07-29 14:25:04

标签: sql-server-2005

我正在总结一个变量。我还希望这个变量的格式中包含千位分隔符。我使用以下代码并在标题中得到错误。任何帮助表示赞赏。

SELECT 
Convert (varchar(10),CAST(Sum(ar.chgamt as Int),1))
,Sum(ar.curbal) as CurBal
FROM rpt_dat_ARDetail ar
WHERE reportmonth = '06/01/2013' AND uci = 'VIT'
GROUP BY ar.curbal,ar.chgamt

1 个答案:

答案 0 :(得分:2)

您需要更改嵌套。你说CAST(SUM(ar.chgamt AS INT),1)无效。

语法错误的具体来源可以通过以下方式纠正:

Convert (varchar(10),SUM(CAST(ar.chgamt as Int)))

然而,即使在修复之后,查询仍然无法按预期工作。

我不确定为什么要转换为int然后转换为varchar,或者当你GROUP BY ming这两列时,为什么你有SUM。如果您显示示例数据(包括数据类型定义以及您在字符串列中存储SUM mable的原因的说明)和所需结果,我们可以帮助您进行查询。