1

我在 SQL Server 2008 中工作。我有两个 xml 变量中的 xml 显式查询的输出。我的 SP 必须将这两个 xml 组合成一个格式良好的第三个 xml。下面给出的插图。不涉及复杂的处理。

我喜欢将两个 xml 变量中存在的两个 xml 合并为一个 xml

假设第一个 XML (@x)

<Student>
<Name>Lawy</Name>
<class>form1</class>
</Student>
<Student>
<Name>Vina</Name>
<class>form2</class>
</Student>

第二个 XML (@y)

<Dept>
<DeptName>Social</DeptName>
<centre>AOS</centre>
</Dept>
<Dept>
<DeptName>Bio</DeptName>
<centre>RJS</centre>
</Dept>

我想要的结果是 (@z)

<sp>
  <Student>
   <Name>Lawy</Name>
   <class>form1</class>
  </Student>
  <Student>
   <Name>Vina</Name>
   <class>form2</class>
  </Student>
  <Dept>
   <DeptName>Social</DeptName>
   <centre>AOS</centre>
  </Dept>
  <Dept>
   <DeptName>Bio</DeptName>
   <centre>RJS</centre>
  </Dept>
</sp>
4

1 回答 1

4
declare @x xml
declare @y xml

select @x = '<Student>
<Name>Lawy</Name>
<class>form1</class>
</Student>
<Student>
<Name>Vina</Name>
<class>form2</class>
</Student>'

select @y = '<Dept>
<DeptName>Social</DeptName>
<centre>AOS</centre>
</Dept>
<Dept>
<DeptName>Bio</DeptName>
<centre>RJS</centre>
</Dept>'

select @x, @y for xml path('sp')

更新:如果你需要你的 sp 中的属性,你可以这样做

select 2 as [@id], @x, @y for xml path('sp')
于 2012-11-27T07:11:55.297 回答