1.nvl(exp1,exp2)
该函数是处理表达式中的空值:
假设表达式exp1是空值,则该函数返回表达式exp2的值,
假设表达式exp1没有是空值,则该函数返回表达式exp1的值。
2.nvl2(exp1,exp2,exp3)
该函数决定exp1是空值和非空值时返回哪个表达式:
假设exp1为空值,则返回exp3
假设exp1非空,返回exp2。
3.coalesce(exp1,exp2,.....)
该函数 返回 表达式中第一个非空值,假设都是空值,则返回空值,表达式最少是两个。
测试语句:
-- nvl
select nvl('','') from dual; select nvl(null,'') from dual; -- nvl2
select nvl2('','','') from dual; select nvl2(null,'','') from dual; -- coalesce
select coalesce('是',null,'否') from dual; select coalesce(null,'是','否') from dual; select coalesce(null,null,'否') from dual; select coalesce(null,null,null) from dual;