mysql的A字段设为int类型,可条件为A='adfs'时可得出所有为0的结果,为何?

birdhaha 2005-06-08 03:10:06
如题,select * from XXX where A='asdf'时也能得到所有A=0的结果,这太不对了吧?是mysql的bug吗?
...全文
51 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
birdhaha 2005-06-13
  • 打赏
  • 举报
回复
真不敢说这样的自动转换是好是不好,mathematician(数学家) 是对的,结帖了。
birdhaha 2005-06-09
  • 打赏
  • 举报
回复
为什么要转换呢?int与字符不能比啊,应该反回空集才对啊。如果这样转估计会出很多错误。
sql server没有这种写法啊,好象这样太不严肃了。
mathematician 2005-06-09
  • 打赏
  • 举报
回复
这样写就行了:
select * from XXX where binary A='asdf';
ice_berg16 2005-06-08
  • 打赏
  • 举报
回复
不是 int默认值为0
比较时A='asdf',MYSQL先将右侧转换为int类型,就是0了

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧