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

Oracle行转列实例

血液明细表如下:
create table "blood"."OC_CarryOrderD"  (
     ID                   nvarchar2(20)                   not null,
    "ProductCode"        nvarchar2(10),
     "BloodGroup"         nvarchar2(10)
);
有编号,产品类别和血型三个字段
数据如下:
要计算某一产品的不同血型的袋数
就要将表行转列,做成如下效果:
代码如下
select productcode,
MAX(decode(rn, 1, codesum, NULL)) A,
MAX(decode(rn, 2, codesum, NULL)) AB,
MAX(decode(rn, 3, codesum, NULL)) B,
MAX(decode(rn, 4, codesum, NULL)) O
from
(
       select productcode,bloodgroup,codesum,row_number() over(PARTITION BY productcode ORDER BY bloodgroup, codesum) rn from (
       select productcode,bloodgroup, count(productcode) as codesum from oc_carryorderd2 group by productcode,bloodgroup order by bloodgroup)
)
group by productcode;
注意: MAX后面的列名(A,AB,B,O)要注意按字母顺序排列,因为后面的select语句是按血型字段升序排列的
对每种产品的袋数做个汇总,如下图
可以在MAX后面加入查询字段 sum(codesum)


相关文档:

关于oracle 的行列转换

今天才发现了wmsys.wm_concat这个有趣有用的函数,它的作用是以','链接字符。
例子如下:
SQL> create table idtable (id number,name varchar2(30));
Table created
SQL> insert into idtable values(10,'ab');
1 row inserted
SQL> insert into idtable values(10,'bc');
1 row inserted
SQL> insert ......

oracle中对排序的总结

  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_PINYIN_M');
  -- 按部首排序
  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_STROKE_M');
  -- 按笔画排序
  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_RADICAL_M');
  --排序后获取第 ......

Oracle RAC学习笔记

Oracle RAC学习笔记
1. Introduction:
Cluster - 对用户来说多台服务器好像是一台服务器一样。
Oracle Clusterware - Oracle提供的集群解决方案
Oracle RAC 多个实例对应一个数据库(文件)
Oracle Cluster Architecture:  (Hardware)
Oracle RAC 俩个组件:Voting Disk和OCR (Oracle Cluster Register)
Voti ......

Oracle常用操作笔记

select name from v$datafile;
create dataspace tablespace datafile '/oracle/oradata/orcl/data01.dbf' size 1024m,'/oracle/oradata/orcl/data02.dbf' size 1024m autoextend on next 100m maxsize unlimited;
alter tablespace dataspace add datafile '/oracle/oradata/orcl/da ......

oracle与sql server对比分析

本译文采用知识共享署名-非商业性使用-相同方式共享 3.0 Unported许可协议发布,转载请保留此信息
译者:马齿苋 | 链接:http://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
作者:Sadequl Hussain | 原文:http://www.sql-server-performance.com/articles/dba/oracle_sql_server_comparison_p1.aspx
一 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号