mysql 等于号 不是精确匹配?????

youlei35 2014-03-29 02:34:27
如下图:
查询语句中,整型字段与 右侧字符串判断的时候,MySQL不但没有报错,而且还查询出结果。。




说明:
inventory_item_id 字段为int 类型



个人怀疑是,MySql 以等号左侧类型为主,把等号右侧值强制转换为整型法,并且丢弃字符部分,所以才会有此结果。

请大神解惑。
...全文
473 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2014-03-29
  • 打赏
  • 举报
回复
MYSQL会对数据进行类型转换。 1a 被转换为 1 了。
ayzen1988 2014-03-29
  • 打赏
  • 举报
回复
坐等高手出来解释一下
test0531 2014-03-29
  • 打赏
  • 举报
回复
我刚试了下,还真是的,第一次遇到。 如果把等号右侧值强制转换为整型法。那么你查‘a’,应该查出来的是id=97的数据了,但结果不是。 应该是把等号右侧,第一次出现的类型截止,丢弃后面的类型。所以id='11a',查出来结果了

56,687

社区成员

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

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