zoukankan      html  css  js  c++  java
  • 深入理解start with.....connect by (三)静态行转列

    用过很多的行转列列转行方法,也看过网友总结的行列转换,今天又尝试了一种新的方法.......
    看下面的代码
    select
    ---? as SID,
    A.T_JJZB_ID AS SecuCode,
    NULL AS PUBDATE,
    NULL AS InfoSource,
    A.FSRQ 
    AS EndDate,
    NULL AS TYPE_CODE,
    DECODE(RN,
    1,'债券',2,'股票',3,'货币资金',4,'国债',5,'企业债',6,'金融债',7,'可转债',8,'其它债券',9,'其它资产',10,'买入返售债券',11,'权证',NULL)
    AS SecuCategoryCode,
    DECODE(RN,
    1,A.ZQZSZ,2,A.Gpsz,3,A.HBZJ,4,A.GZ,5,A.QYZ,6,A.JRZ,7,A.KZZ,8,A.Qtsz,9,A.QTZC,10,A.MRFSZQ,11,A.QZSZ,NULL)
    AS HoldingVal,
    NULL AS PCTOfNAV,
    DECODE(RN,
    1,A.ZQZSZ_ZSZBL,2,A.Gp_zszbl,3,A.HBZJ_ZSZBL,4,A.GZ_zszbl,5,A.QYZ_zszbl,
    6,A.JRZ_zszbl,7,A.KZZ_zszbl,8,A.Qtsz_zszbl,9,A.QTZC_zszbl,10,A.MRFSZQ_zszbl,11,A.QZ_ZSZBL,NULL)
    AS PCTOfTotalAsset,
    SYSDATE 
    AS EntryTime,
    SYSDATE 
    AS UpdateTime,
    A.ZHXGRQ 
    AS GroundTime,
    'GAZX' AS ResourceID,
    A.GUID 
    AS RecordID
    FROM JJTZZH_ZC A JOIN (
    select level rn from dual connect by  level <=11) B
    ON A.SCBZ=0 AND A.GKBZ=1 AND DECODE(RN,1,A.ZQZSZ_ZSZBL,2,A.Gp_zszbl,3,A.HBZJ_ZSZBL,4,A.GZ_zszbl,5,A.QYZ_zszbl,
    6,A.JRZ_zszbl,7,A.KZZ_zszbl,8,A.Qtsz_zszbl,9,A.QTZC_zszbl,10,A.MRFSZQ_zszbl,11,A.QZ_ZSZBL,NULLIS NOT NULL
    -----AND A.GUID=?


    用connect得到要转换的列数,在得到要转换的列,注意值的对应。
  • 相关阅读:
    Java关键字transient和volatile小结(转)
    1、环境
    SSH框架搭建
    2.4 easyui
    PHP操作大文件
    PHP小工具
    PHP正则替换函数收集
    PHP小知识收集
    Yii ACF(accessController)简单控权
    linux 文件存放目录
  • 原文地址:https://www.cnblogs.com/zeromyth/p/1574070.html
Copyright © 2011-2022 走看看