易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle特殊函数用法

<< 1 >>
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(d


相关文档:

Oracle随机取数据的3种方式

第一种:
select * from SOME_TABLE sample(1) where rownum <= 10;
第二种:
select * from (select * from SOME_TABLE order by dbms_random.value) where rownum<=10;
第三种:
select * from (select * from SOME_TABLE order by sys_guid()) where rownum <= 10; ......

Oracle互换总结

Oracle互换总结
1. 多行换成一行
    col1  col2            col1  col2
    a       1
    a       2     转换后 ......

linux 下oracle 的安装(服务端和instant client)

linux 下安装oracle 是一件很令人头疼的事情,我把自己的安装步骤拿出来给大家分享一下。
一.linux服务端的安装.
1.下载oracle服务端软件,下载网址如下
http://www.oracle.com/technology/software/products/database/index.html
我选择的版本是:Oracle Database 10g Release 2 (10.2.0.1.0) for Linux x86-64
  ......

mysql和oracle分页注意点

这里首先说下oracle分页不像mysql分页那么简单直接limit 就可以了.
mysql:sql ="select * from talbe limit 0,10";
第一个数表示下标,就是从第几条数据开始,
第二个数表示每页显示多少条数据,可以说是当你确定每页显示多少行时候,它就是一个固定的数。
这里需要注意的是,mysql的访问下标是从0开始的。� ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号