oracle中case when的用法 可以嵌套

简单Case函数 :

格式

case 列名
when 条件值1 then 选项1
when 条件值2 then 选项2.......
else 默认值 end

使用

select
 case  level
    when '1' then '1111'
    when '2' then '2222'
    when '3' then '333'
    else '9999' 
 end
from 等级表

 

Case搜索函数

格式

case
when 列名=条件值1 then 选项1
when 列名=条件值2 then 选项2.......
else 默认值 end

使用

复制代码
update 等级表
  set wage =
     case
        when level = '1' then wage*1.1
        when level = '2' then wage*1.2
        when level = '3' then wage*1.3
        else wage*1.05
     end
where
   user=1
复制代码

 

嵌套使用

复制代码
select
 case  level
    when '1' then 
       case
         when wage=1 then '1111.1'
         when wage=2 then '1111.2'
         when wage=3 then '1111.3'
         else  '1111'
       end
    when '2' then '2222'
    when '3' then '3333'
    else '9999' 
 end
from 等级表
复制代码

 

posted @   学net的胖子  阅读(6072)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示