oracle存储过程学习笔记(四)

3. 空值操作符NVL
为解决以上两种情况,可以使用NVL操作符。
NVL是一个带有两个参数的函数,NVL(arg1,arg2)。如果第一个为NULL,则NVL函数就返回第二个参数。如下面语句中,当第一个参数arg为NULL时,函数返回1。
NVL(arg,1);
NVL函数可以进行嵌套。这样就可以从一组变量值中选择出一个非空值(NOT NULL)。例如有3个变量:A,B和C。你希望返回A。如果A为NULL,就返回B。如果B为NULL,就返回C。如果3个变量都为NULL,就返回0。这个表达式为:
NVL(A,NVL(B,NVL(C,0)));
在下面的代码中,当OTHER_NAME为NULL时,可用一个空字符串替代它。这样就能从布尔表达式中删除所有的空值。
Set serveroutput on
DECLARE
my_name varchar2(10) :=’SCOTT’;
other_name varchar2(10) :=NULL;
BEGIN
IF
NOT (NVL(other_name,’ ‘) = ’JOHN’ OR NVL(other_name,’ ‘) = ‘SCOTT’)
THEN
dbms_output.put_line(‘CONDITION_TRUE’);
ELSE
Dbms_output.put_line(‘CONDITION_FALSE’);
END IF;
END;

以上代码块的输出结果是:CONDITION_TRUE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值