CREATE TABLE pivot_practice
(
customer_id NUMBER(2),
product VARCHAR(25),
price NUMBER(4)
);
INSERT INTO pivot_practice VALUES (10, 'Pizza', 5);
INSERT INTO pivot_practice VALUES (15, 'Video Game', 25);
INSERT INTO pivot_practice VALUES (20, 'TV', 70);
INSERT INTO pivot_practice VALUES (10, 'Pizza', 5);
INSERT INTO pivot_practice VALUES (25, 'Video Game', 25);
INSERT INTO pivot_practice VALUES (15, 'TV', 70);
INSERT INTO pivot_practice VALUES (10, 'Video Game', 25);
INSERT INTO pivot_practice VALUES (15, 'Pizza', 5);
/
SELECT *
FROM (SELECT customer_id, product, price FROM pivot_practice)
PIVOT (SUM(price) FOR product IN ('Pizza', 'Video Game', 'TV'))
ORDER BY customer_id;
/
--XML
SELECT *
FROM (SELECT customer_id, product, price FROM pivot_practice)
PIVOT XML (SUM(price) FOR product IN (ANY))
ORDER BY customer_id;
/
DROP TABLE pivot_practice;