sql查询数据不匹配问题

问题:

SELECT *  FROM runoob_tb1 where   id='123456789123456789'; 数据查询不对,id=123456789123456789 只有一条数据,查询结果出来多条数据。

 原因

bigint的字段类型查询用字符串方式导致,bigint和string比较时会隐式地都转换成double,查询的字段长19位,double的精度只有15位,导致失去精度,只匹配前15位。

处理:

1,通过desc 查询表,id字段类型是 bigint。

2,把id='123456789123456789';  中的''单引号去掉,就是用bigint类型,完整匹配。

参考:https://www.cnblogs.com/ramsey/p/17057522.html

posted @ 2023-05-10 18:02  等待1248  阅读(423)  评论(0)    收藏  举报