0

より明確な質問は次のとおりです。次のような XML があります。

<tag1>
<tag2>
<tag3 name="aaa">
   <tag4 name="value">6299</ns3MetaString>
</tag3>
<tag3 name="bbb">
   <tag4 name="value">123456</ns3MetaString>
</tag3>
</tag2>
<tag2>
<tag3 name="aaa">
   <tag4 name="value">123</ns3MetaString>
</tag3>
<tag3 name="bbb">
   <tag4 name="value">2344346</ns3MetaString>
</tag3>
</tag2>
</tag1>

SQLの出力がテーブルとして必要なだけです

col1    col2
-------------
6299   123456
123    2344346
4

1 に答える 1

0

これはどう?

DECLARE @xmldata XML = '<tag1>
<tag2>
<tag3 name="aaa">
   <tag4 name="value">6299</tag4>
</tag3>
<tag3 name="bbb">
   <tag4 name="value">123456</tag4>
</tag3>
</tag2>
</tag1>'

SELECT
    Col1 = @xmldata.value('(/tag1/tag2/tag3[@name="aaa"]/tag4)[1]', 'int'),
    Col2 = @xmldata.value('(/tag1/tag2/tag3[@name="bbb"]/tag4)[1]', 'int')

あなたの出力を教えてください。

于 2013-04-30T16:01:35.390 に答える