欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用详解

程序员文章站 2022-03-29 23:51:20
在mysql中可以使用if()、ifnull()、nullif()、isnull()函数进行流程的控制。1、if()函数的使用if(expr1,expr2,expr3),如果expr1的值为true,...

在mysql中可以使用if()、ifnull()、nullif()、isnull()函数进行流程的控制。

1、if()函数的使用

if(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值。

select if(true,'a','b');    -- 输出结果:a
select if(false,'a','b');   -- 输出结果:b

2、ifnull()函数的使用

ifnull(expr1,expr2),如果expr1的值为null,则返回expr2的值,如果expr1的值不为null,则返回expr1的值。

例1

      mysql>   select   ifnull(1,0);   
                            ->   1   
      mysql>   select   ifnull(null,10);   
                            ->   10   
      mysql>   select   ifnull(1/0,10);   
                            ->   10   
      mysql>   select   ifnull(1/0,'yes');   
                            ->   'yes'  

例2

select ifnull(null,'b');    -- 输出结果:b
select ifnull('hello','b'); -- 输出结果:hello

3、nullif()函数的使用

nullif(expr1,expr2),如果expr1=expr2成立,那么返回值为null,否则返回值为expr1的值。

select nullif('a','a');     -- 输出结果:null
select nullif('a','b');     -- 输出结果:a

4、isnull()函数的使用

isnull(expr),如果expr的值为null,则返回1,如果expr1的值不为null,则返回0。

select isnull(null);        -- 输出结果:1
select isnull('hello');     -- 输出结果:0

到此这篇关于mysql中if()、ifnull()、nullif()、isnull()函数的使用详解的文章就介绍到这了,更多相关mysql中if()、ifnull()、nullif()、isnull()内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!