MySQL 的 IFNULL()、ISNULL() 、 NULLIF()、IF() 函数

版权声明:本文为博主原创文章,转载请注明地址。技术交流群 QQ:206831226,备注CSDN。 https://blog.csdn.net/yanxilou/article/details/86550720

一、IFNULL(expr1,expr2)用法

      假如expr1不为NULL,则 IFNULL() 的返回值为expr1; 否则其返回值为 expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。

      

二、ISNULL(expr) 的用法

      如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。

       

 

三、NULLIF(expr1,expr2)用法

    如果expr1 = expr2 成立,那么返回值为NULL,否则返回值为expr1。这和CASE  WHEN expr1 = expr2 THEN NULL ELSE   expr1 END相同。 

       

四、IF表达式

IF(expr1,expr2,expr3)
如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF() 的返回值为数字值或字符串值,具体情况视其所在语境而定。

   

也可以使用 case when语句代替

SELECT            
    case                   -------------如果
    when sex='1' then '男' -------------sex='1',则返回值'男'
    when sex='2' then '女' -------------sex='2',则返回值'女'  
    else 0                 -------------其他的返回'其他’
    end                    -------------结束
from   sys_user            --------整体理解: 在sys_user表中如果sex='1',则返回值'男'如果sex='2',则返回值'女' 否则返回'其他

猜你喜欢

转载自blog.csdn.net/yanxilou/article/details/86550720
今日推荐