【问题标题】:Arithmetic Overflow on numeric AVG() SQL Server数值 AVG() SQL Server 上的算术溢出
【发布时间】:2010-01-18 20:08:30
【问题描述】:

为什么

select avg(cast(5 as numeric(15,2))) 

返回“将数字转换为数据类型数字的算术溢出错误。”?

关于 avg 函数的文档说明如下:

输入:十进制类别(p, s)

输出:十进制(38,s)除以 十进制(10, 0)

我真的不知道它会如何溢出。

【问题讨论】:

  • 在 sql server 2008 上为我工作
  • 你能帮我理解在这个例子中使用avg函数的目的吗?
  • 这是整个查询吗?
  • 查询的唯一目的是显示问题。顺便说一句,运行 SQL Server 2005。

标签: sql-server average


【解决方案1】:

发现问题:

Database Properties > Options > Numeric Round-Abort 已开启。

当设置为关闭时,查询执行成功。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多