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


关键词

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

 

文章的版权

洪哥写文章很苦逼,如果本文对您略有帮助,点击感兴趣的广告支持洪哥!万分感谢!本文属于“洪哥笔记”原创文章,转载请注明来源地址:MySQL查询空字段或非空字段(is null和not null):http://www.splaybow.com/post/mysql-sql-where-is-not-null.html

关注与收藏

如果您在服务器运维、网络管理、网站或系统开发过程中有任何疑问,洪哥以此为饭碗,请加QQ:115085382!
了解更多好文章,请关注我们的新浪微博和腾讯微博
亲,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D


« MySQL删除表中的一个字段 MySQL中的SQL正则匹配regexp和not regexp »

相关文章:

MySQL分类表模板  (2015/4/27 8:03:36)

MySQL文章表模板  (2015/4/28 23:00:18)

mysql中不能使用select into  (2015/4/30 23:00:47)

MySQL修改密码和访问限制设置  (2014/4/21 11:08:34)

mysql逻辑架构及存储引擎简介  (2014/4/17 9:28:09)

MySQL占用虚拟内存优化项  (2014/4/16 10:54:08)

MySQL Slow Log来解决MySQL CPU占用高的问题  (2014/3/16 12:06:25)

修改mysql默认编码支持中文  (2014/3/10 15:33:57)

如何修复mysql数据库损坏的表  (2014/3/5 13:51:15)

关于加强MYSQL安全的几点建议  (2014/3/3 10:51:54)