蔡香满屋
站在牛顿头上吃苹果

概述:

NVL函数是Oracle/PLSQL中的一个函数。

而NVL2()是Oracle在NVL函数的功能上扩展。

----------------------------------------------------------------------------

NVL()格式为NVL( string1, replace_with).功能用法描述:

如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值。

注意:string1和replace_with必须为同一数据类型,显示使用转换函数的情况除外。

工作中用到有想要默认上课人数为0,而数据库中一开始可能为null,此时可以使用:NVL(SKRS, 0)。

NVL2()格式为:NVL2(E1, E2, E3)

功能用法描述:如果E1为NULL,则函数返回E3,若E1不为null,则返回E2。

工作中用到的例子有:业务是:如果xkcgbz这个选课成功标志字段为null,则查筛选状态这个字段的值,不为null,则查找选课成功标志这个字段的值。

nvl2(xkcgbz, ( 
case xkcgbz 
when '0' then '2' 
when '1' then '4' 
when '2' then '1' 
end 
) 
, ( 
case sxzt 
when '2' then '1' 
else '3' 
end 
) 
) XKCGBZ

  

 

posted on 2018-09-03 10:30  蔡香满屋  阅读(600)  评论(0)    收藏  举报