COALESCE 函数功能 :返回列表中的第一个非空表达式(如果所有参数均为 NULL,则 返回 NULL);与Oracle数据库的nvl函数功能相同。
语法
COALESCE ( expression, expression [ , ...] )
参数
expression 任意表达式
示例
SELECT COALESCE(FLD2,0) FROM
(
VALUES
(1,100),
(2,NULL),
(3,0),
(4,400),
(5,500),
(6,600)
) AS TEST(FLD1,FLD2);
查询结果:
100
0
0
400
500
600
其等价于CASE 表达式: CASE WHEN (expression1 IS NOT NULL) THEN expression1 ... WHEN (expressionN IS NOT NULL) THEN expressionN ELSE NULL END ;上述示例用case表达式写法:
SELECT CASE WHEN FLD2 IS NOT NULL THEN FLD2 ELSE 0 END FROM
(
VALUES
(1,100),
(2,NULL),
(3,0),
(4,400),
(5,500),
(6,600)
) AS TEST(FLD1,FLD2);