“pivot” table Oracle - how to change row items into columns

前端 未结 2 1737
眼角桃花
眼角桃花 2020-12-07 06:37

I have the following simple example:

CREATE TABLE Cars ( Cars, Item, Value ) AS
SELECT \'bmw\',      \'wheels\', \'4\'      FROM DUAL UNION ALL
SELECT \'bmw\         


        
相关标签:
2条回答
  • 2020-12-07 07:05

    Try the query below;-

      select * from
      (select cars, item,value from carTable) 
      pivot(max(value) for item in ('wheels', 'color', 'price'))
    
    0 讨论(0)
  • 2020-12-07 07:05
    SELECT cars,
           MAX( CASE item WHEN 'color'  THEN value END ) AS color,
           MAX( CASE item WHEN 'price'  THEN value END ) AS price,
           MAX( CASE item WHEN 'wheels' THEN value END ) AS wheels
    FROM   Cars
    GROUP BY cars;
    

    Outputs:

    CARS     PRICE COLOR  WHEELS
    -------- ----- ------ ------
    lambo    7     yellow 5
    mercedes 6     black  4
    bmw      5     red    4
    
    0 讨论(0)
提交回复
热议问题