Позволяет сказать, у меня есть две таблицыСтруктурирование XML, возвращаемый оператора выбора в Sql Server
ItemGoods, ServiceGoods, которые имеют название и цену среди других столбцов.
, представляющий различные виды проданных товаров.
Я хочу выбрать его в единую структуру 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 будет делать, только до тех пор, как я могу определить элементы из услуг
Великолепный. Благодарю вас. Я попытался вложить его, но мне не хватало, что внешний select() itemGoods, и SQL Server будет бросать ошибку. – evictednoise