oracle的case when的用法和decode函数的用法

oracle中,我们要使用case when时,要怎样使用

如下测试数据,我要把ClassId 的1变成一班,2变成二班,3变成三班,那sql要怎样写呢?

1、case when的用法

  -- oracle中case when的用法---
  select A.StuName,A.GENDER,A.AGE,A.Joindate,A.Address,
  (case A.ClassID when 1 then '一班' when 2 then '二班' else '三班' end) ClassName 
  from Student A;

执行后结果

那除了这个case when的用法,oracle还有什么更方法的函数处理这种情况,那就是我们要介绍的decode函数了

2、decode用法

 select A.StuName,A.GENDER,A.AGE,A.Joindate,A.Address,
   (decode(A.ClassId,1,'一班',2,'二班',3,'三班','')) ClassName 
  from Student A;

执行后结果是

注意: 其中最后decode函数的跟case when的写法是差不多的,只是更简便,建议遇到这种情况,用decode函数

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值