MySQL中的IFNULL,IF,NULLIF函数

时间:2022-09-23 23:52:00

 

 

MySQL中的IFNULL函数和IF函数

    MySQL中的IFNULL函数类似于Oracle中的NVL函数,其表达式为:IFNULL(expr1,expr2),含义是:如果第一个参数不为空,则返回第一个参数,否则返回第二个参数。

       IF(expr1,expr2,expr3)类似于Oracle中的NVL2函数,含义是:如果第一个表达式的值为TRUE(不为0或null),则返回第二个参数的值,否则返回第三个参数的值。

SELECT IFNULL(NULL,"11"); -> 11

SELECT IFNULL("00","11"); -> 00

 

nullif如果第一个参数等于第二个参数,则 nullif 函数返回 null,否则返回第一个参数。

NULIF(1,1)返回NULL,因为1等于1。

NULLIF(1,2)返回1,这是第一个参数,因为1不等于2。
NULLIF('MySQL NULLIF','MySQL NULLIF')返回NULL,因为两个参数是相同的字符串。
NULLIF('MySQL NULLIF','MySQL NULLIF')返回MySQL NULLIF,因为两个字符串不相等。
NULLIF(1,NULL)返回1,因为1不等于NULL。
NULLIF(NULL,1)返回第一个参数,即NULL,因为NULL不等于1。