I have the following simple example:
CREATE TABLE Cars ( Cars, Item, Value ) AS
SELECT \'bmw\', \'wheels\', \'4\' FROM DUAL UNION ALL
SELECT \'bmw\
Try the query below;-
select * from (select cars, item,value from carTable) pivot(max(value) for item in ('wheels', 'color', 'price'))
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