使用 MySQL 中,如果查询字符串时使用“!=
”条件,当字段值为 Null 时也会满足该条件。
示例表:
id | name | url |
1 | 张三 | www.codesou.cn |
2 | 李四 | |
3 | 王五 | NULL |
查询语句:
select * from user where url != 'www.codesou.cn';
返回结果:
id | name | url |
2 | 李四 |
我们的需求是返回 id 为 2 和 3 的两条记录,因为其中 2 的 url 为空字符串,3 的 url 为 NULL,从字面意思来讲都不等于 www.codesou.cn 。但实际上在 MySQL 中只返回了 id 为 2 的记录。
解决办法是补充对 null 的判断,比如:
select * from users where url != "www.codesou.cn" or url is null
当然,如果创建数据表时没有特殊要求的话,MySQL 字段强烈不建议设置 null 为默认值,字符串类型默认值:空字符串即可,这也是 MySQL 数据库设计的一个推荐规范。
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » MySQL 查询“不等于”时,如果值为 null 也会满足条件的解决办法。
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » MySQL 查询“不等于”时,如果值为 null 也会满足条件的解决办法。