当我尝试从表中获取列的总和时,我得到错误Arithmetic overflow error converting expression to data type int
,因为对于INT,结果数字是大的。所以我尝试使用以下
SELECT CAST(SUM(columnname) AS BIGINT) FROM tablename
这给了我同样的错误。我有什么想法吗?
答案 0 :(得分:75)
在求和之前尝试转换它。例如
SELECT SUM(CONVERT(bigint, columnname)) FROM tablename
或
SELECT SUM(CAST(columnname AS BIGINT)) FROM tablename