Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

pivot dinamico sql nel server sql

Sei vicino, ma per farlo funzionare devi costruire il tuo PIVOT utilizzando SQL dinamico e quindi eseguirlo. Quindi, dopo aver popolato la tua variabile @Year, devi fare qualcosa del genere:

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)

Tuttavia, prima di farlo, dovresti dare un'occhiata a questo link .