• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL查询空字段或非空字段(is null和not null)

MySql 海叔叔 1个月前 (05-25) 10次浏览 已收录 0个评论

关键词
MySQL 字段 NULL

摘要

本文介绍在MySQL中,面对值为空(NULL)的字段,应该如何查询。怎么判断一个字段的值为NULL或不为NULL?

本文介绍在MySQL中,面对值为空(NULL)的字段,应该如何查询。怎么判断一个字段的值为NULL或不为NULL?

现在我们先来把test表中的一条记录的birth字段设置为空。

mysql> update test set t_birth=null where t_id=1;
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0

OK,执行成功!
设置一个字段值为空时的语法为:set <字段名>=NULL
说明一下,这里没有大小写的区分,可以是null,也可以是NULL。

下面看看结果:

mysql> select * from test;
+——+——–+———————————-+————+
| t_id | t_name | t_password | t_birth |
+——+——–+———————————-+————+
| 1 | name1 | 12345678901234567890123456789012 | NULL |
| 2 | name2 | 12345678901234567890123456789012 | 2013-01-01 |
+——+——–+———————————-+————+
2 rows in set (0.00 sec)

接下来分别查询一下字段t_birth值为空或不为空的记录:

mysql> select * from test where t_birth is null;
+——+——–+———————————-+———+
| t_id | t_name | t_password | t_birth |
+——+——–+———————————-+———+
| 1 | name1 | 12345678901234567890123456789012 | NULL |
+——+——–+———————————-+———+
1 row in set (0.00 sec)

mysql> select * from test where t_birth is not null;
+——+——–+———————————-+————+
| t_id | t_name | t_password | t_birth |
+——+——–+———————————-+————+
| 2 | name2 | 12345678901234567890123456789012 | 2013-01-01 |
+——+——–+———————————-+————+
1 row in set (0.00 sec)

说明:
1、查询字段值为空的语法:where <字段名> is null
2、查询字段值不为空的语法:where <字段名> is not null

关于MySQL查询空字段或非空字段(is null和not null),本文就介绍这么多,希望对大家有所帮助,谢谢!


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址