赛迪网 > IT技术 数据库 > DB2开发者园地
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

教你快速掌握Oracle SQL到DB2 SQL的移植 (1)

发布时间:2008.01.28 05:01     来源:赛迪网    作者:liuhe

Oracle SQL到DB2 SQL的移植:

1、Oracel中的"decode"

DB2的解决方案:用"case"条件表达式来完成。

"case"两种语法的模式:

(1)CASE

WHEN 条件 THEN 结果1 

ELSE 结果2 

END

(2)CASE 表达式1

WHEN 表达式2 THEN 结果1 

ELSE 结果2 

END

上面的WHEN可以重复多次,就像C中的SWITCH ..CASE的表达.

例如:

SELECT ORDNO,CUSNO, 

CASE MONTH(SHIPDATE) 

WHEN ''01'' THEN ''Jan'' 

WHEN ''02'' THEN ''Feb'' 

WHEN ''03'' THEN ''Mar'' 

WHEN ''04'' THEN ''Apr'' 

WHEN ''05'' THEN ''May'' 

WHEN ''06'' THEN ''Jun'' 

WHEN ''07'' THEN ''Jul'' 

WHEN ''08'' THEN ''Aug'' 

WHEN ''09'' THEN ''Sep'' 

WHEN ''10'' THEN ''Oct'' 

WHEN ''11'' THEN ''Nov'' 

WHEN ''12'' THEN ''Dec'' 

END 

FROM FILE 

应用实例: 

Oracle SQL: 

------------------------- 

select decode(t.organtypecode, ''D'', t.parent, ''S'', t.parent, t.id) 

from A_ORGAN t 

where t.parent = 35 

DB2 SQL: 

------------------------- 

select case x.organtypecode 

when ''D'' then 

x.parent 

when ''S'' then 

x.parent 

else 

x.id 

end 

from a_Organ x 

where x.parent = 35;

1 2 3 4 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 自助供应链已搭好 软件“沃尔玛”雏形初显
· 支付宝巨人合作提供第三方支付 支付电子化
· 访谈 西安协同的BPM和SOA战略 信息化监理
· 菏泽网通改造方案 海事数据交换平台方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统