Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 旋转多列时需要T-SQL帮助_Sql Server_Tsql - Fatal编程技术网

Sql server 旋转多列时需要T-SQL帮助

Sql server 旋转多列时需要T-SQL帮助,sql-server,tsql,Sql Server,Tsql,我有一张桌子 City Region Zone Passcode SureveyBy SureveyDone SureveyExpiry Noida Sector 62 East 1 ABC Y NULL Noida Sector 2 West 1 XYZ N 6/10/2016 Delhi CP Cn

我有一张桌子

City    Region      Zone    Passcode    SureveyBy   SureveyDone SureveyExpiry
Noida   Sector 62   East    1           ABC         Y           NULL
Noida   Sector 2    West    1           XYZ         N           6/10/2016
Delhi   CP          Cnt     10          ABC         N           10/10/2018
Delhi   KB          West    11          RST         Y           NULL
我需要这个格式的结果


源表是创建表Mytable City varchar50、Region varchar50、Zone varchar10、密码varchar50、SureveyBy varchar20、SureVeyOne varchar5、SureveyExpiry date
    DECLARE @col NVARCHAR(max),@sql NVARCHAR(max)
    SELECT  @col=ISNULL(@col+',[','[')+t.SureveyBy+']' FROM dbo.myTable AS t GROUP BY t.SureveyBy
    PRINT @col
    SET @sql='
       SELECT * FROM dbo.myTable
       PIVOT(MAX(SureveyDone) FOR SureveyBy IN ('+@col+')) p'
    EXEC(@sql)