【发布时间】:2012-10-30 11:11:35
【问题描述】:
我需要在这里向正确的方向轻推。简化后的数据如下:
ItemId|ItemName|ObjectId|ObjectName
1 | Alpha | 1 | Alpha-1
1 | Alpha | 2 | Alpha-2
2 | Beta | 3 | Beta-1
2 | Beta | 4 | Beta-2
而我的目标 xml 需要是:
<Root>
<Items>
<Item>
<id>1</id>
<name>Alpha</name>
</Item>
<Item>
<id>2</id>
<name>Beta</name>
</Item>
</Items>
<Objects>
<Object>
<id>1</id>
<item_id>1</item_id>
<name>Alpha-1</name>
</Object>
<Object>
<id>2</id>
<item_id>1</item_id>
<name>Alpha-2</name>
</Object>
<Object>
<id>3</id>
<item_id>2</item_id>
<name>Beta-1</name>
</Object>
<Object>
<id>4</id>
<item_id>2</item_id>
<name>Beta-2</name>
</Object>
</Objects>
</Root>
我在使用FOR XML 语句语法时遇到问题,它允许在Items 部分和Objects 部分之间出现这种中断。我知道如何单独编码每个部分(Objects 无论如何),但不知道如何获得这个堆叠输出。我可以从这里显示的单个视图中执行此操作,还是我需要将内容拆分并以某种方式将 xml 拼接在一起?
【问题讨论】:
标签: sql xml sql-server-2005