oracle(1)

decode

语法如下:
DECODE(value, if1, then1, if2,then2, if3,then3, . . . else )
Value 代表某个表的任何类型的任意列或一个通过计算所得的任何结果。当每个value值被测试,如果value的值为if1,Decode 函数的结果是then1;如果value等于if2,Decode函数结果是then2;等等。事实上,可以给出多个if/then 配对。如果value结果不等于给出的任何配对时,Decode 结果就返回else 。

例子

select product_id,decode(warehouse_id,1,'book',2,'computer',3,'vcd',4,'cd','unknown') kind from inventories.

case

当执行Oracle case语句执行多重条件分支时,如果条件选择符完全相同,并且条件表达式为相同条件选择,那么可以选择单一选择符进行等值比较,语法如下: 
case  条件选择符
when  条件值表达式1 then 要执行的操作1;
when  条件值表达式2 then 要执行的操作2;
。。。。。。。
else 
要执行的操作。
end case;

例子

CASE sex 
WHEN '1' THEN '男' 
WHEN '2' THEN '女' 
ELSE '其他' END 

CASE
WHEN sex = '1' THEN '男' 
WHEN sex = '2' THEN '女' 
ELSE '其他' END

猜你喜欢

转载自hotsheqaz.iteye.com/blog/1998951
今日推荐