Vous êtes proche, mais pour que cela fonctionne, vous devez construire votre PIVOT
à l'aide de SQL dynamique, puis exécutez-le. Ainsi, après avoir renseigné votre variable @Year, vous devez faire quelque chose comme ceci :
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)
Mais avant de faire cela, vous devriez jeter un œil à ce lien .