【发布时间】:2017-06-16 19:49:35
【问题描述】:
我有一个关于 Oracle Sql 的问题,
如果我有一个名为 A 的数据,有 8 列:
Spot| ID |Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday
-------------------------------------------------------------------------
A| 1 | 0.1 |0.15 | ...........................................
-------------------------------------------------------------------------
A| 2 | 0.2 |0.2 | ...........................................
-------------------------------------------------------------------------
A| 3 | 0.3 |0.25 | ...........................................
-------------------------------------------------------------------------
A| 4 | 0.4 |0.4 | ...........................................
-------------------------------------------------------------------------
我可以把它转换成这样的表B吗:
Spot| Day of Week | ID | Value
-------------------------------------------------------------------------
A| 1 | 1 | 0.1
-------------------------------------------------------------------------
A| 1 | 2 | 0.2
-------------------------------------------------------------------------
A| 1 | 3 | 0.3
-------------------------------------------------------------------------
A| 1 | 4 | 0.4
-------------------------------------------------------------------------
A| 2 | 1 | 0.15
-------------------------------------------------------------------------
.......................................................................
将列(周日到周六)组合成一个名为“星期几”的新列
请问我该怎么做?谢谢!
【问题讨论】:
-
我相信UNPIVOT会帮助你:oracle.com/technetwork/articles/sql/11g-pivot-097235.html
-
听起来不错@JacobH 我会看看