我有一张这样的表:
ID_ORIG ID_DEST DISTANCE
------- ------- --------
1 101 10
1 102 15
1 103 20
2 101 25
2 102 30
2 103 35
3 101 40
3 102 45
3 103 50
我想要以下结果:
ID_ORIG 101 102 103
------- --- --- ---
1 10 15 20
2 25 30 35
3 40 45 50
我尝试使用'pivot',但似乎没有达到这个结果。数据库是Oracle 11g 任何帮助,将不胜感激。
答案 0 :(得分:2)
请尝试:
select * From(
select * from YourTable
) PIVOT (sum(DISTANCE) for (ID_DEST) IN (101, 102, 103));