Sql 使用xml path 将单列拼接成一行

本文介绍了一种在SQL中将查询到的多个GUID值拼接成一个字符串的方法,通过使用FOR XML PATH和STUFF函数,可以高效地完成任务,避免了在后台进行遍历拼接的繁琐。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 功能需要,将查询到的单列guid拼接成一个字符串,懒得去在后台去做遍历拼接,百度了下,如下↓

首先,确定你要合并的列

SELECT user_name FROM dbo.users

其次,将其以xml 格式输出
SELECT user_name FROM dbo.users FOR XML PATH

然后,去除包裹的节点名称
SELECT ',' +user_name FROM dbo.users FOR XML PATH('')


(这里,','+user_name以后变成了无列名状态,','可以填充具体的分隔符,PATH('')是自定义外层节点名称)

下来,去掉最终结果首位的分隔符,以空字符替代(PS:这样不用数长度)
SELECT STUFF((SELECT ','+user_name FROM dbo.users FOR XML PATH('')),1,1,'') 

 

实际操作如下图:

 

转载于:https://www.cnblogs.com/JesseP/p/11103376.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值