Mysql 查询精度丢失bigint,varchar

做项目时遇到一个奇怪的问题,关于mysql查询精度会有所丢失的。

比如数据库字段存储为varchar,888890014000600010001,查询的时候就一定要加上单引号。

如:‘888890014000600010001’作为过滤的条件,如果不加单引号,只是where id =888890014000600010001,那么就会查出来多条记录,如:888890014000600000001也会被查出来。

mysql把bigint类型转到varchar时,精度丢失了,因为888890014000600010001远远大于了bigint的极限。

记录下来这个问题,引以为戒。

猜你喜欢

转载自blog.csdn.net/airyearth/article/details/106440995