Mysql查询条件加引号与不加引号的区别

开头向大家问好,看了上篇文章阅读数激增到300+,觉得写的文章还是对一些人有帮助的,很开心。

好了,说了那么多,让我们来看今天遇到的问题:

今天公司网站有个注册用户恶意留言,所以运营人员决定封禁该账号,网站注册均为手机号。

写sql查询该手机号的用户,查询中发现了一个问题,不写引号的话,直接写数字是可以查询出该行的,但是加上引号后便查不出,效果如下图:

几番Google之后,发现时Mysql对于不同数据类型的条件会进行隐式转化(隐式就是你看不到,Mysql自己按照规则将值转化后,再去匹配),不加引号的话,会将loginname作为Int类型进行匹配,所以字符串‘15920147610_disabled’精度上会有损失,如PHP的float类型的精度损失一样。

具体有一些内容网上都有,官网也有介绍,我就不一一写出来了,可以看看几篇文章:

//这篇文章比较全面,列举了几个例子,关于Mysql的隐式转化的规则介绍等:

https://yq.aliyun.com/articles/39477

:)

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值