请问大家在sql server中如何将表1中列值变成表2中的列名

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

img

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

比如说我想把随访结果和全院变成user表中的列名,后面的SFZX和QY变成随访结果和全员的列值。

1、效果如下

img

2、解决方案
使用pivot进行行转列,以及结合分组

3、代码如下

select * from(
    select DeptName,InputCode
    from FWD_Department
    group by DeptName,InputCode
) as a
pivot(
  max(InputCode) for DeptName in([随访中心],[全院],[家庭化产房],[妇科二],妇科一)
) piv