oracle中if/else的3种写法

1、标准sql规范

复制代码
 1 一、单个IF
 2 1 3 
 4 if a=...  then
 5 .........
 6 end if;
 7 
 8 2 9 
10 if a=... then
11 ......
12 else
13 ....
14 end if;
15 
16 二、多个IF
17 
18 if a=..  then
19 ......
20 elsif a=..  then
21 ....
22 end if;     
23 这里中间是“ELSIF”,而不是ELSE IF 。这里需要特别注意
复制代码

2、decode函数

DECODE的语法:

DECODE(value,if1,then1,if2,then2,if3,then3,...,else)

表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。

3、case when

case when a='1'then 'xxxx'
     when a='2' then 'ssss'
else
  'zzzzz'
end as

注意点: 

1、以CASE开头,以END结尾 
2、分支中WHEN 后跟条件,THEN为显示结果 
3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加 
4、END 后跟别名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值