将两个xml片段合并为一个?

2021-10-01 00:00:00 xml xquery sql-server-2008 sql-server

如何将@a@b的xml内容合并成@c?

How to merge the xml content of @a and @b into @c?

declare @a xml = (select 1 aaa for xml path('AAAs'));
declare @b xml = (select 1 bb1, 2 bb2 for xml path('BBBs'));
declare @c xml = ... @a + @b ....?

我需要将合并的 xml 传递给存储过程.

I need to pass the merged xml to a stored procedure.

我知道可以将 xml 转换为 varchar 并连接它们并将其转换回 xml.有什么更好的方法吗?xml 内容可能很大.

I know it's possible to cast the xml to varchar and concat them and convert it back to xml. Any better approach? The xml content can be big.

推荐答案

好的,我找到了一种方法

OK, I found one way

select @a, @b for xml path ('')

相关文章