首页 > 数据库技术 > 详细

oracle_decode、case

时间:2014-08-03 12:38:35      阅读:341      评论:0      收藏:0      [点我收藏+]

1、case

语法:

 case
   when 条件1 then 返回值1
   when 条件2 then 返回值2
   ...
   else 返回值N 

 end;

示例:

declare
  i   integer;
  str varchar2(20);
begin
  i   := 3;
  str := case
           when i = 1 then ‘a‘
           when i = 2 then ‘b‘
           when i = 3 then ‘c‘
         end ;
  dbms_output.put_line(str);
end;

CASE的后台实现代码:

if (condition1) {
  ‘Is Positive‘;
 } else if (condition2 ) {
  ‘Is Negative‘;
 }else {
  ‘Is Zero’
}

2、Decode

语法:decode(变量或表达式,值1,返回值1,值2,返回值2,...,默认值)

示例:SELECT DECODE(SIGN(5 – 5), 1, ‘Is Positive‘, -1, ‘Is Negative‘, ‘Is Zero’) FROM DUAL
Decode的后台实现:

switch ( SIGN(5 – 5) )
  {
  case 1 : ‘Is Positive‘; break;
  case 2 : ‘Is Negative‘; break;
  default : ‘Is Zero’
  }

 


  

 

oracle_decode、case,布布扣,bubuko.com

oracle_decode、case

原文:http://www.cnblogs.com/caroline4lc/p/3888193.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!