COALESCE()函数
COALESCE()函数 定义:返回列表中第一个非null表达式的值。如果所有表达式求值为null,则返回null
对于Oracle数据库和DB2数据库,一般经常对空值处理的函数为NVL,
而mysql中常用到的是ifnull,这两个函数相似,其实都是由一个函数衍生而来,
那就是COALESCE()函数
COALESCE()函数有两种用法:
- COALESCE ( expression1, expression2 );
- COALESCE ( expression1, expression2, … expression-n );
其中第一种就相当于Oracle以及DB2中的nvl或者mysql中的ifnull,
写成表达式的形式为:
CASE WHEN expression1 IS NOT NULL THEN expression1 ELSE
expression2 END;
第二种可以包含n个表达式,表示如果第一个不为空取第一个,否则判断下一个,以此类推,如果全部为空,则返回null值。
NVL函数一个空值转换函数
NVL(表达式1,表达式2)
如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。
该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型。