您的位置:首页 > 数据库 > SQL语言

MySql 中IFNULL、ISNULL和NULLIF

更多 2016/3/25 来源:SQL语言学习浏览量:1054
学习标签: MySql
本文导读:在MySql的应用中,经常需要对数据库中的null值进行判断、处理,在对null值的操作中,少不了利用IFNULL、ISNULL和NULLIF这三个函数,那么它们分别代表什么意思呢?下面将分别介绍MySql 中IFNULL、ISNULL和NULLIF的用法和区别

一、ISNULL(expr

如果expr 为NULL,那么ISNULL() 的返回值为 1,否则返回值为 0。

 

->select isnull(11);

->0;


->select isnull(null);

->1;


备注

1、isnull() 函数同 is null比较操作符具有一些相同的特性。

2、与SQL SERVER中的isnull函数意义不一样。

 

二、IFNULL(expr1,expr2)

1、若expr1不为null,则ifnull()的返回值为expr1;

2、若expr1为null,则返回expr2的值;

 

->select ifnull(1, 2);
->1;

->select ifnull(null, 2);
->2;

->select ifnull(null, 'test');
->test;

3、备注

与SQL SERVER中的isnull函数表达的意思相同

 

三、nullif(expr1,expr2)

若expr1等于expr2,则返回null,否则返回expr1

 

mysql>SELECT NULLIF(1,1);
->NULL

mysql>SELECT NULLIF(1,2);
->1

 

收藏
133
很赞
334