我需要一个XML元素的XML元素
问题描述:
让我们假装我有以下XML。我需要一个XML元素的XML元素
<xml>
...
<tag>
<othertag>
</othertag>
</tag>
...
</xml>
我要的是 “提取” 的
<tag>
<othertag>
</othertag>
</tag>
到另一个变量。 我怎样才能做到这一点?
答
DECLARE @xml XML=
'<xml>
<SomeTag test="x"/>
<SomeTag test="y"/>
<tag>
<othertag>
</othertag>
</tag>
<SomeTag test="z"/>
</xml>';
如果可能的话,要尽可能具体
DECLARE @xml2 XML = @xml.query('(/xml/tag)[1]');
SELECT @xml2;
如果没有,你可能会去偷懒的方法...
DECLARE @xml3 XML = @xml.query('//tag');
SELECT @xml3;