玖叶教程网

前端编程开发入门

产品操作MySQL第7篇 – 运算符 – IS NULL

本资料为产品岗位作为日常工作参考,语言口语化

At 2019/4/27 By David.Yang

介绍什么是IS NULL

IS NULL作为一种运算符,用来对数据表中的NULL值数据进行过滤。

语法

target IS NULL

target值为NULL,则表达式返回TRUE,否则返回FALSE。

MYSQL中没有BOOLEAN类型,

使用TINYINT(1)表示BOOLEAN,

1 = TRUE, 0 = FALSE。

IS NULL和大于、小于等一样都是比较运算符,可以在SELECT WHERE等出使用它。

示例:

SELECT 1 IS NULL, # 0

0 IS NULL, # 0

NULL IS NULL; # 1



IS NOT NULL

表示对值进行非NULL的确定

target IS NOT NULL

target不值为NULL,则表达式返回TRUE,否则返回FALSE。

SELECT 1 IS NOT NULL, #-- 1

0 IS NOT NULL, #-- 1

NULL IS NOT NULL; #-- 0;



数据表演示IS NULL

过滤出学生表当中,国籍为NULL学生

SQL

SELECT

*

FROM

students

WHERE

nationality IS NULL;



那IS NOT NULL呢?

SQL

SELECT

COUNT(*)

FROM

students

WHERE

nationality IS NOT NULL;

通过COUNT()统计有27个学生都有国籍



IS NULL能过滤字符串空么?



我们构造了几条测试数据,他们的地址字段有几种类型:

FALSE字符串

0

空字符串

以及NULL

我们再来使用IS NULL过滤

SQL

SELECT

*

FROM

students

WHERE

address IS NULL;



结果只能查询出NULL的记录,

所以需要注意,IS NULL不能对其他的空类型进行过滤。

补充

IS NULL可以和其他条件通过OR拼接

SELECT

*

FROM

students

WHERE

nationality = '南宋'

OR

nationality IS NULL;

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言