mysql where查询 字段默认值为null问题

今天进行代码重构 将循环体的sql查询准备提到循环外面执行,遇到一个问题 分享下:
查询条件之一默认值为NUll 当我进行判断时 因为我传入的数据基本为整型值 在与数据库中数据作比较
比如 传入值100 拿100与null 作比较 100=null 为真还是假呢 第一反应当然假了 那如果100 = null 为假那100 != null 为真为假呢 经查资料原来 null不能用= 比较 比较结果为unknow 未知 倾向于假
所以 100=null 未知 当成假的查询没问题 但100 != null 当成真的 查询就有问题了 字段默认值可为null 要用is null 或者 is not null判断,最好的方式就是源头 不能为null 一切都安静了 不知道为什么要有null这个类型

所以 真的反面为假 假的反面还不一定是真啊

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值