可以说,我有两张桌子
ItemGoods、ServiceGoods,其中包含 Name 和 Price 等列。
代表销售的不同种类的商品。
我想将其选择为单个 xml 结构。
现在我正在使用这个选择
DECLARE @goods_prices VARCHAR(8000)
SET @goods_prices = (select * from
(SELECT [name] item_name,
[cost] price
FROM ItemGoods
UNION
SELECT [name] service_name,
[cost] price
FROM ServiceGoods) goods
FOR XML AUTO);
我得到的输出:
<goods>
<itemName>Item1</itemName>
<price>299.0</price>
</goods>
<goods>
<itemName>Service1</itemName>
<price>4,99</price>
</goods>
我寻求的输出将类似于
<goods>
<itemGoods>
<item>
<itemName>Item1</itemName>
<price>299.0</price>
</item>
</itemGoods>
<serviceGoods>
...
</serviceGoods>
</goods>
我如何实现这一目标?我需要将结果打包到一个变量中。只要我可以从服务中定义项目,就可以使用更简单的 xml 结构