1.NVL函数
语法:NVL(expr1,expr2)
作用:如果expr1不是null,返回expr1,否则返回expr2
如下面例子所示
SELECT NVL(NULL,1) FROM DUAL;--输出结果为:1
SELECT NVL(2,1) FROM DUAL;--输出结果为:2
2.NVL2函数
语法:NVL(expr1,expr2,expr3)
作用:如果expr1不是null,返回expr2,否则返回expr3
如下面例子所示:
SELECT NVL2(NULL,1,3) FROM DUAL;--输出结果为:3
SELECT NVL2(4,2,1) FROM DUAL;--输出结果为:2
3.NULLIF函数
语法:NULLIF(expr1,expr2)
作用:比较两个表达式,如果相等,返回null,否则返回第一个表达式
如下面例子所示:
SELECT NULLIF(1,1) FROM DUAL;--输出结果为:空
SELECT NULLIF(4,2) FROM DUAL;--输出结果为:4
4.COALESCE函数
语法:COALESCE(expr1,expr2,...,exprn)
COALESCE(表达式1,表达式2,...表达式n)函数是对NVL函数的扩展。COALESCE函数的功能是返回第一个不为空的参数,参数个数不收限制。
如下面例子所示:
SELECT COALESCE(NULL,NULL,1,2,3) FROM DUAL;--输出结果为:1
SELECT COALESCE(NULL,5,3,9) FROM DUAL;--输出结果为:5
SELECT COALESCE(8,1,3,9) FROM DUAL;--输出结果为:8