oracle函数备忘

nvl(exp1,exp2):
if exp1 is null, return exp2;
else if exp1 is not null,return exp1;
exp1和exp2的type必须一致或可隐式的转成一致,但可以是任意type。

nvl2(exp1,exp2,exp3):
if exp1 is not null, return exp2;
else if exp1 is null, return exp3;
exp1的type任意;exp2和exp3的type必须一致或可隐式的转成一致,但不能是long。

nullif(exp1,exp2):
if exp1=exp2, return null;
else if exp1!=exp2, return exp1;

coalesce(exp1,exp2,...expn)
返回第一个非null表达式的值;若所有表达式都为null,返回Null。

decode(exp,srch1,rst1,[srch2,rst2,...srchn,rstn,default]):
若exp=srch1,返回rst1,
若exp=srch2,返回rst2,
...
若exp=srchn,返回rstn,
若没有找到匹配值,返回default,
若没有default,返回null。
进行比较之前,会把exp和每个srch条件转成srch1的类型
会把返回值转成rst1的类型,若rst1为null或char,返回varchar2.
decode中,null可以参加等值比较,若exp为null,则返回第一个srch为null的rst值。
最多250个表达式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值