在 sql 服务器中以数据透视格式记录

record in pivot format in sql server

我们正在使用 sql 服务器 2008 和以下格式的数据。

我想以下面的数据透视格式记录上面的内容。

请帮忙。

select * from  PivotEx
pivot
(
  avg(avg)
  for city in ( [Mumbai] ,[Ahmedabad],[Raikot])
) piv;

在 pivot 中动态传递值

Declare @cols nvarchar(max)
Declare @query nvarchar(max)
SET @cols = STUFF((SELECT distinct ',' + QUOTENAME(city) 
            FROM PivotEx
            FOR XML PATH(''), TYPE
            ).value('.', 'NVARCHAR(MAX)') 
        ,1,1,'')
set @query = '  select * from PivotEx
                 pivot 
                 (
                     avg(avg)
                    for city in (' + @cols + ')
                 ) p '

execute(@query)