所以我有一个包含XML字符串形式的entry1的column1。我的任务是解析这个XML字符串并将输出细分为打印字符串中的子节点。 例如, 数据集看起来像这样:
<ParameterValues>
<ParameterValue>
<Name>A</Name>
<Value>1</Value>
</ParameterValue>
<ParameterValue>
<Name>B</Name>
<Value>1</Value>
</ParameterValue>
<ParameterValue>
<Name>C</Name>
<Value>3</Value>
</ParameterValue>
</ParameterValues>
我需要打印所有值的Name列和所有值的Value列。 像这样:
我遇到两个障碍。 首先,我如何存储这个&#34;表&#34; of x&#34; columns&#34;在列表中一次解析一个数据集。 其次,一旦我解决了这个问题,我就可以开始研究它了。
答案 0 :(得分:0)
DECLARE @Xml XML = N'<ParameterValues>
<ParameterValue>
<Name>A</Name>
<Value>1</Value>
</ParameterValue>
<ParameterValue>
<Name>B</Name>
<Value>1</Value>
</ParameterValue>
<ParameterValue>
<Name>C</Name>
<Value>3</Value>
</ParameterValue>
</ParameterValues>'
SELECT x.a.value('Name[1]','varchar(10)') AS Name
,x.a.value('Value[1]','varchar(10)') AS Value
FROM @Xml.nodes('/ParameterValues/ParameterValue') x(a)
╔══════╦═══════╗
║ Name ║ Value ║
╠══════╬═══════╣
║ A ║ 1 ║
║ B ║ 1 ║
║ C ║ 3 ║
╚══════╩═══════╝