BIGINT UNSIGNED value is out of range 报错解决

今天在进行数据分析时,遇到了一个小坑,当两个字段相减运算时,如果其中一个或两个字段的类型的unsigned无符号类型,且结果值小于0测绘出现下列报错。

BIGINT UNSIGNED value is out of range in ‘(`refund`.`ctime` – `refund`.`atime`)

解决方案和思路如下:

一、修改字段类型

二、使用cast函数转字段为signed类型

select cast(字段1 as signed) – cast(字段2 as signed)

问题解决。

发表评论

电子邮件地址不会被公开。 必填项已用*标注