select *,(c1='1.00011880000000000e+7')as q from cj where binary ( c1= '1.00011880000000000e+7')就可以了
解决方案 »
- mysql_real_query() 多线程封装的问题
- 求问workbench怎么导出frm文件啊~
- 求砖石 mysql备份方案 大量数据备份 数据上百G
- 急~~~~求一MYSQL字段内容替换语句~~~在线等候~~~
- 求简单group by having的sql语句
- 请教:关于MYSQL 一条删除数据库命令
- 出现Fatal error: Maximum execution time of 60 seconds exceeded in .....
- mysql中能否用 describe tables 等查询结果复制成表或应用在子查询中?
- jdbc异常
- 请教一个触发器的小问题
- 如何开发基于MySQL的分布式数据库服务器?请指点一二
- 急!!急!!急!!急!!急!!!
'1.00011880000000000e+007' 被看做'1.00011880000000000e+007'--字符穿而1.00011880000000000e+007 被看做1.00011880000000000e+007---数据浅妄薄见,望与斟酌
-> 1谁能说一说内部转换机制
where id = '1.00011880000000000e+007'ID应该是被转换成了字符型,
如果你用这个一定行的select * from table
where id = '1.00011880000000000e+007'+0
在int与字符串比较的时候,应该都转换成浮点型进行转换
为什么会这样
我用MySQL4.0.4重新试了一下,1 select * from table
where id = '1.00011880000000000e+007'2 select * from table
where id = 1.00011880000000000e+0073 select * from table
where id = 100011884 select * from table
where id = '10001188'这四个 SQL 都可以得到正确的结果了,
可以MySQL在3.23版上有此BUG吧