关于MySQL中对于NULL值的判断以及替换等问题中,我们可以使用IF()、IFNULL()、NULLIF()、ISNULL()函数,区别如下:
-  IF()函数 
 IF(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值。SELECT IF(TRUE,'1','0'); -- 1 SELECT IF(FALSE,'1','0'); -- 0
-  IFNULL()函数 
 IFNULL(expr1,expr2),如果expr1的值为NULL,则返回expr2的值,如果expr1的值不为NULL,则返回expr1的值。SELECT IFNULL(NULL,'0'); -- 0 SELECT IFNULL('123','0'); -- 123
-  NULLIF()函数 
 NULLIF(expr1,expr2),如果expr1=expr2成立,那么返回值为NULL,否则返回值为expr1的值。SELECT NULLIF('1','1'); -- null SELECT NULLIF('1','2'); -- 1
-  ISNULL()函数 
 ISNULL(expr),如果expr的值为NULL,则返回1,如果expr1的值不为NULL,则返回0。SELECT ISNULL(NULL); -- 输出结果:1 SELECT ISNULL('1'); -- 输出结果:0










