Você está perto, mas para isso funcionar você tem que construir seu
PIVOT
usando SQL dinâmico e, em seguida, execute-o. Então, depois de preencher sua variável @Year, você precisa fazer algo assim:DECLARE @Query VARCHAR(MAX)
SET @Query = '
SELECT * from ( SELECT Amount, FYYear, column1, column2,column3 from BUYSCTE ) BUY
PIVOT( SUM(Amount) FOR FYYear in ('+ @Year + ') ) pvt'
EXEC(@Query)
Embora antes de fazer isso, você deve dar uma olhada este link .