Oracle的case 用法


1.测试表
declare @stuinfo table
(id int,
sname nvarchar(20), ///小组名称
gender varchar(1), //小组性别
sgroup int) //小组序号

2.语法:
  case [表达式]
when 条件表达式 then 结果表达式
  [...n]
  [else 其他条件表达式]
  end
  注:其中[]内都是可选的。

3.case后加表达式,根据表达式结果返回。
select *,
case sgroup
when 1 then '组1'
when 2 then '组2'
when 3 then '组3'
else '未知' end [as] 别名
from 表名

4.case 后不加表达式,不加表达式,则根据when的条件返回。
select *,
case
when sgroup = 1 and gender = 'm' then '第一组男生'
when sgroup = 1 and gender = 'f' then '第一组女生'
when sgroup = 2 and gender = 'm' then '第二组男生'
when sgroup = 2 and gender = 'f' then '第二组女生'
when sgroup = 3 and gender = 'm' then '第三组男生'
when sgroup = 3 and gender = 'f' then '第三组女生'
else '未知' end [as] 别名
from 表名


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM