扫码关注官方订阅号
用 char 类型存储大数字时,如果查询 sql 直接用 id=201511051505538905 这种不标准的方式查询时,会因为具体 id 值的不同,出现查询不到的情况。 正确做法是加上单引号',便能正确查询到
char
id=201511051505538905
'
请问背后的实质原因是什么?
闭关修行中......
id=201511051505538905它的数据类型为int而你的id的数据类型为string,当然查不到,但你可以转换为intcast(id as int)
where id=201511051505538905 id是char类型 而你用数字比较,mysql会将字符串转为数字,就是0 201511051505538905 != 0
where id=201511051505538905
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
id=201511051505538905
它的数据类型为int
而你的id的数据类型为string,当然查不到,但你可以转换为int
cast(id as int)
where id=201511051505538905id是char类型 而你用数字比较,mysql会将字符串转为数字,就是0 201511051505538905 != 0