1、NVL函数
NVL函数的格式如下:NVL(expr1,expr2)
含义是:【取第一个不为空的参数】=>如果Oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值;如果两参数都为空,则显示空。
例:
select nvl('1','2') from dual;
2NVL2函数
NVL2函数的格式如下:NVL2(expr1,expr2,expr3)
含义是:【与NVL有很大的不同】=>如果该函数的第一个参数不为空那么显示第二个参数的值,如果第一个参数的值为空,则显示第三个参数的值。
例:
select nvl2('1','2','3') from dual;
3NULLIF函数
NULLIF(exp1,expr2)函数的作用是如果exp1和exp2相等则返回空(NULL),否则返回第一个值。
例:
select nullif('1','1') from dual;
4Coalesce函数
Coalesce函数的作用与NVL的函数有点相似,取第一个不为空的参数,其优势是有更多的选项。
格式如下:
Coalesce(expr1,expr3... exprn)
Coalesce是这样来处理这些参数的。如果第一个参数为空,则看第二个参数是否是空,否则则显示第一个参数,如果第二个参数是空再看第三个参数是否为空,否则显示第二个参数,依次类推。
这个函数实际上是NVL的循环使用
例:
selectcoalesce('1','3','4','5','6')fromdual;