XML ドキュメントからデータを選択していますが、各子ノードをループしていくつかのアクションを実行する必要があります。
現在、select の周りに while exists ループがありますが、ノード番号をパラメータ化する方法がわかりません。
以下が正しくないことは理解していますが、ノード選択をパラメータ化する最良の方法を誰かが指摘できれば幸いです。
ありがとう。
DECLARE @nodeCount varchar(1) = '1'
WHILE EXISTS (SELECT table.value('(Info/Data/DataInfo/Type/node())[' + @nodeCount + ']', 'nvarchar(10)') from table)
XML は次のとおりです。
<Info xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Data>
<DataInfo>
<Description>11111111111</Description>
<Type>1</Type>
</DataInfo>
<DataInfo>
<Description>2222222222222</Description>
<Type>2</Type>
</DataInfo>
<DataInfo>
<Description>3333333333333</Description>
<Type>3</Type>
</DataInfo>
</Data>
</Info>