Sql server 用t-sql连接列

Sql server 用t-sql连接列,sql-server,tsql,Sql Server,Tsql,我有下表 我需要编写一个按代码、DateCod、Room和NumberOfBeds分组的查询 对于Name列,我需要连接名称,对于Booking列和Num列,我需要求和的操作相同 结果应该如下 我正在尝试XML路径(“”)的方法,但找不到解决方案。有人能给我一个建议吗 致以最良好的问候,非常感谢 Fab您可以使用STUFF和FOR XML PATH(“”)来实现这一点 查询 select t.[Code], t.[DateCod], t.[Room], t.[NrBeds

我有下表

我需要编写一个按代码、DateCod、Room和NumberOfBeds分组的查询

对于Name列,我需要连接名称,对于Booking列和Num列,我需要求和的操作相同

结果应该如下

我正在尝试XML路径(“”)的
方法,但找不到解决方案。有人能给我一个建议吗

致以最良好的问候,非常感谢
Fab

您可以使用
STUFF
FOR XML PATH(“”)
来实现这一点

查询

select 
  t.[Code], 
  t.[DateCod],
  t.[Room],
  t.[NrBeds],
  stuff((select ',' + t.[Name]
    from [your_table_name] t1
    where t1.[Code] = t.[Code]
    for xml path, type).value('.[1]', 'nvarchar(max)'), 1, 1, '') as [Name],
  stuff((select ',' + t.[Booking]
    from [your_table_name] t1
    where t1.[Code] = t.[Code]
    for xml path, type).value('.[1]', 'nvarchar(max)'), 1, 1, '') as [Booking],
  sum(t.Num) as [Num]
from [your_table_name] t
group by t.[Code], t.[DateCod], t.[Room], t.[NrBeds];

因为XML路径是正确的路径,您能告诉我们您尝试了什么吗?