gpt4 book ai didi

sql-server - sum(DATALENGTH) 返回 "Arithmetic overflow"错误

转载 作者:行者123 更新时间:2023-12-01 00:30:27 33 4
gpt4 key购买 nike

我是 SQL Server 的新手,所以如果我的问题看起来太简单,请接受我的道歉。我试图找到一个解决方案,但到目前为止我看不到任何可以在我的查询中使用的东西。

我正在尝试查找表中最大列的长度,并且我正在使用以下查询。

SELECT
SUM(DATALENGTH([INSDetails])) as [INSDetails]
FROM
dbo.Contractors

Contractors 表略超过 8GB,有超过 3000 万行。 INSDetails 列是 varchar(2048)

上面的查询对于我数据库中所有其他表的所有其他列都运行良好,但是当我在 Contractors 表上运行它时,它返回一个错误

Msg 8115, Level 16, State 2, Line 26
Arithmetic overflow error converting expression to data type int.

我知道当您尝试将某种数据类型的值转换为另一种数据类型时会出现此错误消息,但该值对于第二种数据类型来说太大了。

能否请您帮我重写查询或建议替代方法来获取输出?

我读到有人建议使用 CAST AS big int 来解决这个问题,但我不确定如何将它合并到我的查询中。

任何建议将不胜感激。提前谢谢你。

最佳答案

select sum(cast(datalength([INSDetails]) as bigint))

关于sql-server - sum(DATALENGTH) 返回 "Arithmetic overflow"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31118678/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com