我希望以下列格式生成xml数据 - 动物值必须是标记名称
<pets>
<dog>
<name>spot</name>
</dog>
<cat>
<name>tom</name>
</cat>
</pets>
我可以写一些动态的SQL但是如果有更好的方法????
;with cte(animal,name)
as
(
select 'dog','spot' union
select 'cat','tom'
)
select
animal
,name
from cte
for xml path(animal),root('pets')
答案 0 :(得分:1)
使用下一个代码: -
SELECT (
SELECT 'spot' AS name
FOR
XML PATH('dog'),
TYPE
),
( SELECT 'tom' AS name
FOR
XML PATH('cat'),
TYPE
)
FOR XML PATH(''),
ROOT('Pets')
GO
<强>结果: - 强>
<Pets>
<dog>
<name>spot</name>
</dog>
<cat>
<name>tom</name>
</cat>
</Pets>