以下に示す形式のxml変数があり、要素名とそれぞれのフィールド値を動的に読み取ってT-SQL構造体にロードする必要があります。
declare @InputXml xml
Set @InputXml = '<Root RootName="rooNameValueHere">
<Element Name="elementName">
<SubElement Field="subelementFielName"/>
</Element>
<Element Name="otherElementName">
<SubElement Field="subelementFielName1"/>
<SubElement Field="subelementFielName2"/>
<SubElement Field="subelementFielName3"/>
</Element>
</Root>'
ヒント:1-ルートにはN個の要素を含めることができます2-各要素にはN個のサブ要素を含めることができます3-すべての情報を取得でき、1つの要素名を指定して除外できるルーチンを作成する必要があります(ei:特定の要素、そのすべてのsubElementsを返します)。
現在、このT-SQLを記述して、1つの要素名を指定してsubElementsを取得していますが、null値を取得しています。
select
t.c.value('@Field', 'nvarchar(10)') AS SomeAlias
from
@InputXml.nodes('N/Root/Element[@Name = ''elementName'']//SubElement') t(c);
解決策:
この投稿は、私の問題を解決するのに役立ちます。回答してくれたすべての人に感謝します。