Here is an example of a working pivot based loosely on your sample data
declare @itemMaster table (Item varchar(3), amount decimal(15,2));
insert into @itemMaster (Item, amount) values
(select Item,amount from @ItemMaster) p
sum([amount]) for Item in (A1, A2, B1, C1)
This CP article gives some guidance Simple Way To Use Pivot In SQL Query
From the OP comments below I think they might just need those items in a character separated list rather than a pivot on values. Here are some ways to achieve that
1. From SQL Server 2017 you can use STRING_AGG
SELECT STRING_AGG(item, '|') as columnlist from @itemMaster
2. In earlier versions you can use FOR XML e.g.
SELECT TOP 1
SELECT DISTINCT '|' + Item
FOR XML PATH('')
), 1, 1, ''
) as columnlist
3. For even earlier versions you can use a Common Table expression e.g.
DECLARE @listStr VARCHAR(MAX) = null
;WITH cteitems AS
SELECT DISTINCT Item from @itemMaster
SELECT @listStr = COALESCE(@listStr+'|' ,'') + Item
All of the above give the output
without knowing what values exist