查询中的行到列和列到行的转换

时间:2013-12-24 09:48:12

标签: sql oracle plsql

我想反转表格中的数据,即转换:

  1. 行到列。
  2. 列到行。
  3. 实际的表数据是

                    col1     col2
    ---------------------------------
    row1              1        2
    row2              3        4
    

    预期产出:

                    col1     col2
    ---------------------------------
    row1              1        3
    row2              2        4
    

    我已经厌倦了正常的选择查询,但无法解决如何执行此操作。是否可以在PL / SQL中使用?

1 个答案:

答案 0 :(得分:0)

 (select * from (select a,b from t) pivot(sum(a) for b in(2,4)))

 union

 (select * from (select a,b from t) pivot(sum(b) for a in(1,3)));