关于计算问题,在线等答案

frenzy917 2006-04-11 04:27:21
在使用存储过程的时候除了这个错误
将 expression 转换为数据类型 int 时发生算术溢出错误。

我需要用到13位的数值,要通过计算得出
select @Q =1000000000 * @C + 1000000 * @G + 1000 * @D

请问怎么处理
...全文
68 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
marco08 2006-04-11
  • 打赏
  • 举报
回复
@Q 可以是bigint类型
bigint类型 存储大小为 8 个字节。
int类型 存储大小为 4 个字节
marco08 2006-04-11
  • 打赏
  • 举报
回复
谢谢楼主,这么快就给分
frenzy917 2006-04-11
  • 打赏
  • 举报
回复
这里面的@Q应该是什么类型?
我试了还是不成
marco08 2006-04-11
  • 打赏
  • 举报
回复
select @Q =1000000000 * cast(@C as bigint) + 1000000 * cast(@G as bigint) + 1000 * cast(@D as bigint)
frenzy917 2006-04-11
  • 打赏
  • 举报
回复
好像是计算结果超出int的范围了
frenzy917 2006-04-11
  • 打赏
  • 举报
回复
不是这个的问题
itblog 2006-04-11
  • 打赏
  • 举报
回复
select @Q =1000000000 * cast(@C as int) + 1000000 * cast(@G as int) + 1000 *cast(@D as int)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧