DB2将行转换为列

时间:2014-10-28 08:12:05

标签: db2 pivot

我必须转动以下数据:

自:

SELECT NAMES, SUM(AMT1), SUM(AMT2) FROM MY_TABLE GROUP BY NAMES

NAMES          AMT1        AMT2
Mike           6000        5000
Jerry          1000        10
King           500         2000
Mary           400         5000
Harry          100         500

Names Mike  Jerry  King  Mary  Harry
AMT1  6000  1000   500   400   100
AMT2  5000  10     2000  5000  500 

是否可以使用DB2上的查询来实现它?请注意,NAME字段是动态的,我的桌子上最多可以有25行。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我不确定是否存在针对此数据透视问题的通用解决方案。但是,可以使用DBMS_SQL处理元数据,然后执行数据透视。

我开发了自己的此透视版的通用版本,并在GitHub中发布:https://github.com/angoca/db2tools

它需要一个现有的表(会话或持久性)并创建一个以行为列的会话表,反之亦然。