Oracle:处理NULL值的最佳方法

时间:2014-12-12 12:08:38

标签: oracle plsql

我在程序中有这段代码:

 if val is NULL
    then 
    creb :=0;
   else 
     creb := val;
 end if;

有没有更优雅的方式来处理null?

2 个答案:

答案 0 :(得分:6)

使用coalesce (),如果传递给它,则返回列表中的第一个非空值:

creb := coalesce(val, 0);

答案 1 :(得分:5)

作为波希米亚答案的补充,如果您需要带有值的 else 案例,则Oracle具有非标准NVLNVL2不同于条件 - 处理该问题的功能。

creb := nvl(val, 0);

COALESCE具有标准和接受多个参数的优点。