I am getting this data from into one of view, which internally collect from various sources, I would like to format this data in normalised way, so this can be easily used in SSRS for charting purpose.
Raw Data
ServerName TimeStamp CPU_PCT_Utilization
Server_01 2015-04-16 16:23:04.000 2.781995773
Server_01 2015-04-16 16:28:04.000 2.804701567
Server_01 2015-04-16 17:23:04.000 2.804701567
Server_02 2015-04-21 04:33:02.000 1.094034672
Server_02 2015-04-20 17:28:02.000 1.34284699
Server_02 2015-04-20 17:33:02.000 3.027540922
Server_02 2015-04-20 13:28:03.000 0.860414088
Server_02 2015-04-20 13:33:03.000 0.785780609
Server_02 2015-04-20 18:28:02.000 3.027540922
Server_03 2015-04-21 07:04:57.000 1.316953659
Server_03 2015-04-21 07:09:57.000 1.483076811
Server _?? … .
Server _?? .. .
Server _?? . .
Server _?? . .
Required OUTPUT
TimeStamp Server_01 Server_02 Server_03 Server _?? Server _??
2015-04-16 16:23:04.000 2.781995773 NULL NULL NULL .
2015-04-16 16:28:04.000 2.804701567 NULL NULL . …
2015-04-16 17:23:04.000 2.804701567 NULL NULL … .
2015-04-21 04:33:02.000 NULL 1.094034672 NULL . .
2015-04-20 17:28:02.000 NULL 1.34284699 NULL . …
2015-04-20 17:33:02.000 NULL 3.027540922 NULL … NULL
2015-04-20 13:28:03.000 NULL 0.860414088 NULL . NULL
2015-04-20 13:33:03.000 NULL 0.785780609 NULL . NULL
2015-04-20 18:28:02.000 NULL 3.027540922 NULL … NULL
2015-04-21 07:04:57.000 NULL NULL 1.316953659 . ..
2015-04-21 07:09:57.000 NULL NULL 1.483076811 . .
… . … . NULL …
.. . .. . . …
. … NULL … . .
. . . . … .
I tried using pivot but that didn't helped, if anyone can write a query for this will be great, here rows and columns both are dynamic.
A similar solution is posted at Simple way to transpose columns and rows in Sql? but that with fixed values.