SQL 用cast(num1 as signed)-cast(num2 as signed) 解决报错BIGINT UNSIGNED value is out of range in...


SQL中:两数相减来做查询条件,由于两个字段都是unsigned的,并两个的大小是不一样。所以直接相减查询的时候,会出现负数,导致报错(Mysql不报错)

ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in..

解决方法为:cast(num1 as signed)-cast(num2 as signed)