oracle查询 - 类似于pivot,但是

时间:2014-02-28 11:57:34

标签: sql oracle pivot

我有一张这样的表:

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 任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:2)

请尝试:

select * From(
    select * from YourTable
  ) PIVOT (sum(DISTANCE) for (ID_DEST) IN (101, 102, 103));

SQL Fiddle Demo