mysql在网站开发中,越来越多人使用了,方便部署,方便使用。
我们平时使用中,有时候需要查询某个字段为空值的数据,那么如何查询这些空值数据?下面一起来看下。
操作方法
01
查询学生表的数据,发现有三行数据 gender列是空值的。如图

02
我们可以用什么方法查询显示出gender列是空值的数据呢?
select * from student where gender = ''这样?
如图,这样是查询不到的。空值(NULL)不等同于空字符串值

03
那如果用 = null是否可以得到正确的结果?
select * from student where gender=null
结果如图,也查询不到正确的数据。

04
要查null值的数据,可以用mysql内置的is_null函数,
select * from student where isnull(gender)
传入的参数就是列名, 如图,可以正确查询到结果,

05
除了用上面的 is_null方法,我们还可以用比较操作符 is null来查询,
select * from student where gender is null
如图,可以正确查询到结果,和上面的函数一样,只不过是语法上的差别。

06
那如果是查询所有不是null值的数据呢?
我们可以用 is not null来查询
select * from student where gender is not null

07
用函数的方法就是
select * from student where !ISNULL(gender)
或
select * from student wherenot ISNULL(gender)

08
当有查询到有null值数据时,我们希望将null值替换成其他字符串时,可以用 ifnull()函数, 比如把null的值,换成‘未知’,
select id, name, IFNULL(gender,'未知') as gender from student

好了,以上就是大致内容了,(END)
声明:该文观点仅代表作者本人,天晴资讯网系信息发布平台,仅提供信息存储空间服务。
本文介绍了在MySQL中如何筛选字段为空值的数据。通过使用`IS NULL`和`IS NOT NULL`操作符,以及`ISNULL()`和`IFNULL()`函数,可以有效地查询和处理空值记录。示例查询展示了正确筛选和替换空值的方法。
4853

被折叠的 条评论
为什么被折叠?



