欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-02-19 19:07:10
现在我们先来把test表中的一条记录的birth字段设置为空。 mysql> update test set t_birth=null where t_id=1...

现在我们先来把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),本文就介绍这么多,希望对大家有所帮助,谢谢!