sql >> Databasteknik >  >> RDS >> Sqlserver

dynamisk sql pivot i sql server

Du är nära, men för att detta ska fungera måste du konstruera din PIVOT använda dynamisk SQL och sedan köra den. Så efter att du har fyllt i din variabel @Year måste du göra något så här:

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)

Innan du gör detta bör du dock ta en titt på denna länk .




  1. Hur kan jag skriva migrering för att infoga poster med phinx?

  2. Att skicka en array av data som en indataparameter till en Oracle-procedur

  3. Hur man kommer åt den inbyggda CRM-mallen i Microsoft Access

  4. Hitta alla rader med hjälp av något Unicode-intervall (som kyrilliska tecken) med PostgreSQL?