WITH q AS
(
SELECT *
FROM (
VALUES
('Sponge', 'A', 29),
('Sponge', 'B', 32),
('Sponge', 'C', 33),
('Sponge', 'D', 34),
('Rod', 'A', 1),
('Rod', 'B', 2),
('Rod', 'C', 3),
('Rod', 'D', 4)
) q (item, category, amount)
)
SELECT *
FROM q
PIVOT (
MAX(amount)
FOR category IN ([A], [B], [C], [D])
) AS qp