Oracle 11g中的数据透视表

时间:2013-03-04 04:09:13

标签: oracle oracle11g

你可以帮我弄清楚数据透视表吗?这是第一张表:

Date        1     2     3     4     5
-----------------------------------------
20130101   0.12  0.13  0.43  0.32  0.22
20130102   0.22  0.31  0.13  0.31  0.29
20130103   0.32  0.12  0.33  0.12  0.34

我希望这个表格像这样:

Date      Number  Values
---------------------------
20130101     1     0.12
20130101     2     0.13
20130101     3     0.43
20130101     4     0.32
20130102     5     0.22
20130102     1     0.22
20130102     2     0.31
20130102     3     0.13
20130102     4     0.31
20130102     5     0.29
20130103     1     0.32
20130103     2     0.12
20130103     3     0.33
20130103     4     0.12
20130103     5     0.34

我试图找到特定的查询,就像使用“decode”一样,但它对我不起作用。

这是我尝试过的网站: Advice Using Pivot Table in Oracle

你可以帮我解决这个问题吗? 非常感谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您不需要PIVOT but an UNPIVOT

SELECT *
FROM table1
unpivot
(
  "Values" FOR "Number" IN ("1","2","3","4","5")
 );

Here is a sqlfiddle demo