我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql字段数据为null时反查询不到的解决方案

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql字段数据为null时反查询不到的解决方案

 当我们通过 mysql 使用 NOT IN 查询时,如果条件字段可以为 NULL 并且值为NULL需要特别注意一下这个时候使用 NOT IN 查询时是查询不到的。

mysql字段数据为null时反查询不到

测试NULL时反查询不到例子

  • 假如我们现在有一个表 user

idnickname
1张三
2李四
3NULL
4王五
  • 现在我们查询用户名不是 张三李四  的用户

select * from users where user_name not in ('张三','李四');
  • 这个时候我们应该得到的是两条数据

idnickname
3NULL
4王五
  • 但是结果却只有一条数据

idnickname
4王五

分析测试NULL时反查询不到问题

 这是因为 mysqlnot in 使用的是 不相等(!=) 比较,即每条记录的 user_name 都和  张三, 李四 进行数据比较。

foreach ($user_names as $user_name) {
       if ($user_name != '张三' && $user_name != '李四') {
               return true; // 符合条件
       } else {
               return false; //不符合条件
       }
}

mysql问题解决方案

  • mysqlNULL 的判断只能用 IS NULIS NOT NULL 判断, NULL != 任意值  都返回 false 所有 id = 3 的记录不符合条件。

  • 在使用 mysql 设计表字段时候我们应该避免允许 NULL 的存在,在设置字段时使用 NOT NULL 不允许存在 NULL

`createtime` INT UNSIGNED NOT NULL DEFAULT '0' COMMENT '创建时间',

       

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql字段数据为null时反查询不到的解决方案

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql字段数据为null时反查询不到的解决方案

 当我们通过 mysql 使用 NOT IN 查询时,如果条件字段可以为 NULL 并且值为NULL需要特别注意一下这个时候使用 NOT IN 查询时是查
mysql字段数据为null时反查询不到的解决方案
2022-06-17

mysql中查询字段为null的数据navicat问题怎么解决

这篇“mysql中查询字段为null的数据navicat问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“mysql
2023-07-04

vue查询数据el-table不更新数据的解决方案

这篇文章主要介绍了vue查询数据el-table不更新数据的问题及解决方案,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2022-12-15

如何解决SSM Mapper文件查询出返回数据查不到个别字段的问题

这篇文章将为大家详细讲解有关如何解决SSM Mapper文件查询出返回数据查不到个别字段的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。SSM Mapper查询出返回数据查不到个别字段原因开启了驼峰命
2023-06-28

全网多种方法解决数据库有数据,但mybatis查询出来的值为Null、为空或不存在的问题

文章目录 1. 复现问题 2. 分析问题 3. 解决问题 4. 解决该问题的其他方式 5. 总结说明 1. 复现问题 今天在查询组件详情时,却报出如下错误: 接下里,我便详细分析出现该错误的原因。 2. 分析问题
2023-08-22

解决MySQL数据库字段超长问题的终极指南:一劳永逸的解决方案!

当字段长度超过MySQL所支持的最大长度时,数据可能无法正确存储或查询,导致数据丢失或错误。为了解决这个问题,下面是一些可行的解决方案和指导原则。
MySQL数据库2024-11-30

编程热搜

目录