Sql 使用xml path 将单列拼接成一行
Posted jessep
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql 使用xml path 将单列拼接成一行相关的知识,希望对你有一定的参考价值。
功能需要,将查询到的单列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,‘‘)
实际操作如下图:
以上是关于Sql 使用xml path 将单列拼接成一行的主要内容,如果未能解决你的问题,请参考以下文章
sql server 2000中如何使用xml for path来进行字符串拼接
Sql Server 中FOR XML PATH(‘‘)函数用法