Skip to main content

Pivot Multiple Columns in sql server


MY table name  product1

ID    Amount      Date
----
1    300     02-02-2010 00:00
 2    400     02-02-2009 00:00
 3    200     02-02-2011 00:00
 4    300     22-02-2010 00:00
 5    400     12-02-2009 00:00
 6    500     22-02-2009 00:00
 7    600     02-02-2006 00:00
 8    700     02-07-2012 00:00
 9    500     08-02-2012 00:00
10    800     09-02-2011 00:00
11    500     06-02-2010 00:00
12    600     01-02-2011 00:00
13    300     02-02-2019 00:00

Desired output:
   Y1          Y2            Y3 ...........
 sum(amount)   sum(amount)   sum(amount)
What is an approach, where Y1 is the year part of the date, such that the result column would be the following?
YEAR       2006   2009    2010   2011   2012
-   ---------
Total         600   1300     800   1900   1200

 Create procedure [dbo].[pivot]  
 as  
 begin  
 DECLARE @Years nvarchar(max)  
 SELECT @Years = STUFF(  
 (  
 select distinct ',[' + cast(Year([Dates]) as nvarchar(4)) + ']'  
 from Product1  
 for xml path('')  
 ),  
 1,1,'')  
 DECLARE @SQL nvarchar(max)  
 SELECT @SQL = N'  
 select * from ( select amount, year([Dates]) as [y] from product1 ) Data  
 PIVOT ( sum(Amount) FOR [y] IN ( ' + @Years + ' ) ) PivotTable  
 UNION  
 select * from ( select units, year([Dates]) as [y] from product1 ) Data  
 PIVOT ( sum(units) FOR [y] IN ( ' + @Years + ' ) ) PivotTable  
 '  
 EXECUTE (@SQL)  
 end  

Popular posts from this blog

All songs notation and chords at one place

Song : O Saathi Re Film : Mukhathar Ka Sikkandhar Uses : C D D# E G A Note : The numbers at the end of the lines indicate line numbers. Pallavi: O saathi re, tere binaa bhi kya jina, tere binaa bhi kya jina A- C D D#....,D D C DD E...C..CA-...,D D C DD E...CC.......1 Play line 1 again phulon men khaliyon men sapnom ki galiyon men GGG...GAGE.. GGG G A G E.................................................2 tere bina kuchh kahin naa E A G E D C D D#.......................................................................3 tere binaa bhi kya jina, tere binaa bhi kya jina D D C DD E....C..CA-..., D D C DDE....CC.............................4 Charanam: har dhadkan men, pyaas hai teri, sanson men teri khushboo hai CCC C D C A-, CCC C D C A-, DDD DED CD EE.. CCCC......................5 is dharthi se, us ambar tak, meri nazar men tu hi tu hai CCC C D C A-, CCC C D C A-, DDD DED CD EE.. CCCC......................6 pyaar yeh tute naa GGG... GAG D#......E............................

Song Aankhen Khuli Ho lyrics notation

Song : Aankhen Khuli Ho Movie: Mohabbatein Notes used : W=>Western - C D E F G- A- B-/ H=>Hindustani - S R G M P- D- N- ( Here for western, G=G-, A=A-, & B=B- ) ( For hindustani, P=P-, D=D-, & N=N- ) Song I : Aankhen Khuli...Ho Ya.. Ho Bandh W=> A.... C... B..C.. E.. E...... A... A.... H=> D... S... N..S.. G G....... D... D.... Deedaar Un Ka Ho.o.taa Hai.. W=> A...B....A....D.BAG....ADB... H=> D...N...D.....R.NDP...DRN... Kaise Kahoon Main O..Yaaraa W=> B..D.. D....E.... D.....C..C..C... H=> N..R.. R....G... R.....S..S..S..... Ye Pyaar Kaise Hota Hai W=> E...B.....DB...AG...B..AA H=> G...N....RN...DP...N...DD (Tururu ru ru, ru ru rururu ru......) W=> AA...GA...BCE..., B...DB..GA H=> DD...PD...NSG..., N..RN.. PD Song II: Aa.aj He Kisi..par Yaa.ro.on..., Marke De..Khe..gein Hum W=> E....FEDCBABC.D.. D D......., G A B C.... E.......D...D..... H=> G....MGRSNDNS.R. R R......., P D N S.....G........R...R.... Pyaar Ho...

How to create View using Union query from one database to another database in SQL

To create View using Union query from one database to another database in SQL you can get hints from below example its very simple your column should be the same type and number of the column should be same to create union query view. USE [TestDB] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO Create VIEW [dbo].[Test_FinancialDimension] AS ( SELECT [key_] ,[NAME] ,[Value] FROM MicrosoftDynamicsAX.dbo.dimattributecompanyinfo union SELECT [key_] ,[NAME] ,[Value] FROM MicrosoftDynamicsAX.dbo.DimAttributeOMCostCenter --union -- SELECT [key_] ,[NAME],[Value] FROM MicrosoftDynamicsAX.dbo.DimAttributeHcmWorker union SELECT [key_] ,[NAME] ,[Value] FROM MicrosoftDynamicsAX.dbo.DIMATTRIBUTEOMDEPARTMENT union SELECT [key_] ,[NAME] ,[Value] FROM MicrosoftDynamicsAX.dbo.DimAttributeOMB...