利用sum来实现行列转换(二)

2014-11-24 12:23:10 · 作者: · 浏览: 5
ODE, STAT_CYCLE, DATA_VALUE, CHAIN_VALUE)
values (1300025906, 3, '天津', 'ZH001359', 201212, 190000, 0.90);
实现预期结果的查询语句如下:
www.2cto.com
SELECT T1.ORG_NAME,
T1.STAT_CYCLE,
SUM(CASE
WHEN T1.IDX_CODE = 'ZH001359' THEN
T1.DATA_VALUE
END) AS DV1,
SUM(CASE
WHEN T1.IDX_CODE = 'ZH001360' THEN
T1.DATA_VALUE
END) AS DV2,
CAST(SUM(CASE
WHEN T1.IDX_CODE = 'ZH001359' THEN
T1.CHAIN_VALUE
END) AS NUMBER(6, 2)) AS DV3
FROM TEST T1
WHERE T1.IDX_CODE IN ('ZH001359', 'ZH001360')
AND T1.STAT_CYCLE >= '201201'
AND T1.STAT_CYCLE <= '201212'
AND T1.ORG_NO = '1'
GROUP BY T1.STAT_CYCLE, T1.ORG_NAME
ORDER BY STAT_CYCLE DESC;