网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  Oracle中decode()函数的使用技巧     
  文章作者:未知  文章来源:未知  
  查看:199次  录入:管理员--2007-09-29  
   

decode()函数的使用技巧:

?软件环境:

1、windows nt4.0+oracle 8.0.4

2、oracle安装路径为:c:\orant

?含义解释:

decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
该函数的含义如下:
if 条件=值1 then
    return(翻译值1)
elsif 条件=值2 then
    return(翻译值2)
    ......
elsif 条件=值n then
    return(翻译值n)

else
    return(缺省值)
end if

? 使用方法:

1、比较大小

select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值

sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1

例如:

变量1=10,变量2=20

则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。

2、表、视图结构转化

现有一个商品销售表sale,表结构为:

month char(6) --月份
sell number(10,2) --月销售金额
现有数据为:
200001  1000
200002  1100
200003  1200
200004  1300
200005  1400
200006  1500
200007  1600
200101  1100
200202  1200
200301  1300

想要转化为以下结构的数据:

year   char(4)      --年份
month1  number(10,2)   --1月销售金额
month2  number(10,2)   --2月销售金额
month3  number(10,2)   --3月销售金额
month4  number(10,2)   --4月销售金额
month5  number(10,2)   --5月销售金额
month6  number(10,2)   --6月销售金额
month7  number(10,2)   --7月销售金额
month8  number(10,2)   --8月销售金额
month9  number(10,2)   --9月销售金额
month10  number(10,2)   --10月销售金额
month11  number(10,2)   --11月销售金额
month12  number(10,2)   --12月销售金额

结构转化的sql语句为:

create or replace view
v_sale(year,month1,month2,month3,month4,month5,
month6,month7,month8,month9,month10,month11,month12)
as
select 
substrb(month,1,4),
sum(decode(substrb(month,5,2),'01',sell,0)),
sum(decode(substrb(month,5,2),'02',sell,0)),
sum(decode(substrb(month,5,2),'03',sell,0)),
sum(decode(substrb(month,5,2),'04',sell,0)),
 
 
上一篇: Oracle平台应用数据库系统的设计与开发    下一篇: 轻松掌握jdbc操纵Oracle数据库lob字段
  相关文档
解决未找到oracle客户端和网络组件现象 04-22
Oracle中spfile和pfile之间区别和联系 05-13
for loop读取游标和open close的区别 04-15
解析:Oracle数据库最大可用性体系结构 09-01
Oracle案例详细分析:Job任务停止执行 04-23
如何在window nt系统中监测oracle进程 02-01
实例解析:怎样更改监听器日志文件名称 11-21
教你通过任务和管道异步调用存储过程 04-11
配置windows与linux平台的data gurad (1) 05-28
使用Oracle Text构建全文搜索应用程序 05-13
在Oracle9i中Oracle DATA计算时间差 04-23
快速掌握重启oracle数据库的操作步骤 04-17
分析如何选择Oracle优化器使你事半功倍 05-27
轻松掌握"0racle-07445"错误的解决步骤 03-03
如何将oralce数据库中孤独临时段清除 04-16
深入了解缓冲日志文件i/o重要性能问题 04-16
数据库维护 01-15
从多个方面详细讲解sqlplus的使用技巧 (1) 03-04
教你快速掌握一个简单的oracle定时任务 03-14
实例讲解ora-12514和ora-12514解决方法 04-15
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息