如何在SQL Server中转置查询结果(行到列)

时间:2017-02-17 00:41:25

标签: sql sql-server-2008

我的查询给出了如下结果:

initial query

所以,我想将结果转换成:

query transformed

注意带有NULL值的交叉字段。

3 个答案:

答案 0 :(得分:2)

PIVOT是实现这一目标的方法,起初可能令人困惑(至少对我而言)。

https://www.codeproject.com/Tips/500811/Simple-Way-To-Use-Pivot-In-SQL-Query

答案 1 :(得分:1)

由于@ [P Doe],我找到了一个很好的解决方案来解决我的问题,指导我找到解决方案。

链接是:

Dynamic PIVOT in Sql Server

答案 2 :(得分:0)

 select id,SN,
 case Part when 'P1' then '1' else null end 'P1',
 case Part when 'P2' then '1' else null end 'P2',
 case Part when 'P3' then '1' else null end 'P3',
 case Part when 'P4' then '1' else null end 'P4',
 case Part when 'P5' then '1' else null end 'P5'
  from table1