sqlserver多行怎么合并成一行多列

avatar
作者
筋斗云
阅读量:0

在SQL Server中,可以使用FOR XML PATH子句来将多行合并为一行多列。下面是一个示例:

假设有一个名为Employees的表,其中包含以下数据:

ID    Name       Department -------------------------- 1     John       IT 2     Mary       HR 3     David      Finance 

可以使用以下查询将上述数据合并为一行多列的结果:

SELECT STUFF((SELECT ',' + Name               FROM Employees               FOR XML PATH('')), 1, 1, '') AS Names 

结果如下:

Names ----------------- John,Mary,David 

在上面的查询中,子查询使用FOR XML PATH(‘’)将每个Name值转换为一个带有逗号分隔的字符串。然后,使用STUFF函数将第一个逗号替换为空字符串,从而得到最终的合并后的结果。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!