码迷,mamicode.com
首页 > 数据库 > 详细

oracle_decode、case

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

标签:os   strong   io   ar   代码   line   oracle   c   

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

标签:os   strong   io   ar   代码   line   oracle   c   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!