Oracle的空值处理函数

前端之家收集整理的这篇文章主要介绍了Oracle的空值处理函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1NVL函数

@H_403_13@NVL@H_403_13@函数的格式如下:NVL@H_403_13@(expr1,expr2)

@H_403_13@含义是:【取第一个不为空的参数@H_403_13@】@H_403_13@=>@H_403_13@如果@H_403_13@Oracle@H_403_13@第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值;如果两参数都为空,则显示空。

例:

select nvl('1','2') from dual;

2NVL2函数

@H_403_13@NVL2@H_403_13@函数的格式如下:NVL2@H_403_13@(expr1,expr2,expr3)

@H_403_13@含义是:【与@H_403_13@NVL@H_403_13@有很大的不同】@H_403_13@=>如果该函数的第一个参数不为空那么显示第二个参数的值,如果第一个参数的值为空,则显示第三个参数的值。

例:

select nvl2('1','2','3') from dual;

3NULLIF函数

NULLIF@H_403_13@(exp1,expr2)@H_403_13@函数的作用是如果exp1exp2相等则返回空(NULL),否则返回第一个值@H_403_13@。

例:

select nullif('1','1') from dual;

4Coalesce函数

@H_403_13@Coalesce@H_403_13@函数的作用NVL函数有点相似,取第一个不为空的参数,其优势是有更多的选项@H_403_13@。

@H_403_13@格式如下:

Coalesce@H_403_13@(expr1,expr3... exprn)

@H_403_13@Coalesce@H_403_13@是这样来处理这些参数的。如果第一个参数为空,则看第二个参数是否是空,否则则显示第一个参数,如果第二个参数是空再看第三个参数是否为空,否则显示第二个参数,依次类推。

这个函数实际上是NVL的循环使用

例:

selectcoalesce('1','3','4','5','6')fromdual;

猜你在找的Oracle相关文章