需要帮助将SQL Server 2012中的一列转换为行-不存在聚合和标签列

需要帮助将SQL Server 2012中的一列转换为行-不存在聚合和标签列,sql,sql-server,Sql,Sql Server,我正试着弄到这个 PatID FacID RxNo RejectCd 121403 463 57074566 R9 121403 463 57074566 76 121403 463 57074566 88 121403 463 57074566 8C PatID FacID RxNo RejectCd 121403 463 57074566 R9,76,88,8c

我正试着弄到这个

PatID   FacID   RxNo        RejectCd
121403  463     57074566    R9 
121403  463     57074566    76
121403  463     57074566    88
121403  463     57074566    8C 
PatID   FacID   RxNo        RejectCd
121403  463     57074566    R9,76,88,8c
像这样

PatID   FacID   RxNo        RejectCd
121403  463     57074566    R9,76,88,8c
我尝试过使用支点或分阶段进行,但我被卡住了。无法透视,因为我没有列名字段。在它运行之前,我们也不知道实际会存在多少拒绝代码,但我们现在可以忽略这一部分。我认为这对任何SQL迷来说都是一个挑战。谢谢你

有几种方法,但最简单也是最常见的方法之一是使用for xml path

PatID   FacID   RxNo        RejectCd
121403  463     57074566    R9,76,88,8c
在sql server vNext中,您将能够使用:

PatID   FacID   RxNo        RejectCd
121403  463     57074566    R9,76,88,8c

没有string_agg函数,所以我使用了第一个解决方案,它工作得非常好!非常感激!谢谢你!谢谢你!谢谢你@user2001292很乐意帮忙!