转载自  MySQL isnull()函数基本指南

MySQL ISNULL函数简介

ISNULL函数接受一个参数,并测试该参数是否为NULL。如果参数为NULL,则ISNULL函数返回1,否则返回0

下面说明了ISNULL函数的语法:

ISNULL(expr)

请考虑以下示例:

SELECT ISNULL(NULL); -- 1
SELECT ISNULL(1);  -- 0
SELECT ISNULL(1 + NULL); -- 1;
SELECT ISNULL(1 / 0 ); -- 1;

请注意,如果您尝试找到Microsoft SQL Server的ISNULL函数的MySQL替代方法,则应该使用MySQL的IFNULL函数。 因为ISNULL函数在MySQL中与Microsoft SQL Server的ISNULL函数是不同的。

MySQL ISNULL函数和IS NULL运算符

ISNULL函数与IS NULL运算符共享一些行为。 例如,如果您将DATE类型的列声明为NOT NULL,则可以使用以下语句查找特殊日期“0000-00-00”

SELECT *
FROMtable_name
WHEREISNULL(date);

请注意,MySQL故意实现此函数来支持ODBC应用程序,因为ODBC不支持特殊日期值'0000-00-00'。或者修改以下值为: sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,官方手册参考: https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html

我们来看下面的一个例子。

首先,创建一个名为special_isnull的新表,如下所示:

USE testdb;
drop table if exists special_isnull;
CREATE TABLE special_isnull (start_date DATE default NULL
);

其次,将一些数据插入到special_isnull表中:

INSERT INTO special_isnull(start_date)
VALUES('2000-01-01'),('0000-00-00'),(NULL);

注意:MySQL 5.7 中不允许插入 0000-00-00 值

第三步,使用ISNULL函数从special_isnull表查询数据:

SELECT *
FROMspecial_isnull
WHEREISNULL(start_date);

执行上面查询语句,得到以下结果 -

+------------+
| start_date |
+------------+
| NULL       |
+------------+
1 row in set

查询返回一行,而您可能希望返回一个空结果集。

当您要取消IS NULL运算符时,可以使用NOT运算符,即IS NOT NULL。 但是,对于ISNULL函数,可以使用!ISNULL

在本教程中,您已经学习了如何使用MySQL ISNULL函数及其特殊行为来处理NULL值。

MySQL isnull()函数基本指南相关推荐

  1. mysql的isnull函数_MySQL isnull()函数基本指南

    本教程将向您介绍MySQL ISNULL函数以及如何使用它来处理NULL值. MySQL ISNULL函数简介 ISNULL函数接受一个参数,并测试该参数是否为.如果参数为NULL,则ISNULL函数 ...

  2. SQL:mysql中如何使用isnull函数

    转自:https://blog.csdn.net/kunkun378263/article/details/42676449 总结: mysql中: 1.isnull(exper) 判断exper是否 ...

  3. MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用

    在MySQL中可以使用IF().IFNULL().NULLIF().ISNULL()函数进行流程的控制. 1.IF()函数的使用 IF(expr1,expr2,expr3),如果expr1的值为tru ...

  4. mysql中如何使用isnull函数

    mysql中: 1.isnull(exper) 判断exper是否为空,是则返回1,否则返回0 2.ifnull(exper1,exper2)判断exper1是否为空,是则用exper2代替 3.nu ...

  5. 简单介绍SQL中ISNULL函数使用方法

    这篇文章介绍了SQL Server.MySQL.Oracle三种数据库中ISNULL函数的使用方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 SQL Ser ...

  6. mysql 聚合函数内比较运算符_关于常用 MYSQL 聚合函数,其他函数 ,类型转换,运算符 总结...

    /* 关于MYSQL 聚合函数,其他函数 ,类型转换,运算符 总结,*/ -- 1 运算符优先级  /* 12.1.1. 操作符优先级 以下列表显示了操作符优先级的由低到高的顺序.排列在同一行的操作符 ...

  7. mysql自定义函数的分号_MySQL之自定义函数实例讲解

    转自:https://www.2cto.com/database/201804/740205.html MySQL中已经有很多函数,如时间函数等,但是有时这些函数不能满足自己的设计需求,此时需要自定义 ...

  8. MySQL 最全优化指南

    MySQL 最全优化指南 当MySQL单表记录数过大时,增删改查性能都会急剧下降,所以我们本文会提供一些优化参考,大家可以参考以下步骤来优化: 一.单表优化 除非单表数据未来会一直不断上涨,否则不要一 ...

  9. oracle同sql中isnull无法,SQL中的ISNULL函数使用介绍

    这篇文章主要为大家详细介绍了SQL中的ISNULL函数使用介绍,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! ISNULL 使用指定的替换值替换 ...

最新文章

  1. squid日志文件太大,怎样处理?
  2. enum类型被intent所携带时需要注意的地方
  3. 使用Gitblit 在windows 上部署你的Git Server
  4. Android 音频开发(二) 采集一帧音频数据
  5. 车油表灯亮了,还能开多久?
  6. vue中常用的事件修饰符
  7. win7局域网共享教程
  8. java http请求图片_Java上传带图片的Http请求详解
  9. 《一封来自日本的信——2018年日本社会和生活水平现状》 摘要
  10. 【LeetCode】买卖股票的最佳时机含手续费 [M](动态规划)
  11. 【日常点滴016】python游戏库arcade结合Tiled map editor地图编辑器和Pymunk物理引擎制作游戏过程记录,并最终打包为exe文件
  12. HTTP Referer 教程
  13. 剖析抖音快速涨粉的文案号,了解大佬运营技巧,学以致用
  14. PCB钻孔输出的一个简单动作,却带来工厂的命运转折
  15. 是否似曾相识?每个开发人员都犯过的15个错误
  16. 树形结构的数据与一维数组数据的相互转换
  17. 小型计算机电源,打造“小钢炮”别只顾机箱主板!SFX电源应该这样选
  18. android 录音的格式,Android录音mp3格式实例详解
  19. JSTL核心标签详解
  20. 网易严选企业级微前端解决方案与落地实践

热门文章

  1. php yaf smarty,Yaf 结合用户自定义的视图(模板)引擎Smarty(Yaf + Smarty)
  2. [数据结构-严蔚敏版]P61ADT Queue的表示与实现(单链队列-队列的链式存储结构)
  3. [Java基础]比较器排序Comparator的使用
  4. [蓝桥杯2015决赛]密文搜索
  5. 数据结构与算法-- 数组中出现次数超过一半的数字(时间复杂度的讨论)
  6. 计算机连接拒绝访问,Win10系统下Windows无法连接到打印机,拒绝访问的解决办法...
  7. c语言开发环境 推荐,C语言复习和VC++6.0开发环境推荐.ppt
  8. redis spring 切面缓存_今日份学习: Spring中使用AOP并实现redis缓存?
  9. 2019-03-18-算法-进化(反转链表)
  10. Educational Codeforces Round 32 G. Xor-MST 01tire + 分治 + Boruvka