mysql IFNULL函数和COALESCE函数使用技巧
IFNULL() 函数
IFNULL() 函数语法格式为:
IFNULL(expression, alt_value)
如果第一个参数的表达式 expression 为 NULL,则返回第二个参数的备用值。
参数
|
描述
|
expression
|
必须,要测试的值
|
alt_value
|
必须,expression 表达式为 NULL 时返回的值
|
COALESCE() 函数
COALESCE(value,…)是一个可变参函数,可以使用多个参数。
作用:接受多个参数,返回从左至右、第一个不为NULL的参数,如果所有参数都为NULL,那么返回NULL;当它使用2个参数时,和IFNULL函数作用相同。
举个栗子:
SELECT IFNULL(NULL,\'test\'); //test
SELECT IFNULL(\'Hello\',\'test\'); //Hello
SELECT IFNULL(NULL,NULL); //NULL
SELECT COALESCE(\'Hello\',\'test\'); //Hello
SELECT COALESCE(NULL,\'test\'); //test
SELECT COALESCE(\'Hello\',\'test\',\'test1\',\'test2\'); //Hello
SELECT COALESCE(NULL,NULL,NULL,\'test2\'); //test2
SELECT COALESCE(NULL,NULL,NULL,NULL); //NULL