ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORACLE多字段CASE WHEN

ORACLE多字段CASE WHEN

原创 Linux操作系统 作者:听海★蓝心梦 时间:2011-09-23 14:25:31 0 删除 编辑
case when可以根据条件重设某个字段的返回值,但是一般情况下都是根据本字段的值来返回需要的值,如:
 
select t.Name, 
(case t.id                     --此处可以省略括号,改变id为name 
when 1 then 'zhao' 
when 2 then 'qian' 
when 3 then 'sun' 
else 'li' 
end)                              --注意不要丢掉end关键字哦 
from T t;
 
但是如果根据多个字段来限制返回值,case when一样也是可以处理的:
 
SELECT
CASE
WHEN t.flag=1 AND t.date<=SYSDATE-2 THEN 1
ELSE 0
END as new_flag
FROM t;
这样,凡是flag=1并且date为两天之前的,就返回值1,否则返回0,该字段为一个伪列字段,可以起一个任意的别名,如new_flag。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/751371/viewspace-708176/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: DBMS_Job包的用法
下一篇: 设置CMD窗口大小
请登录后发表评论 登录
全部评论

注册时间:2009-02-18

  • 博文量
    253
  • 访问量
    1268010