我希望将XML字段拆分为多列数据集。 XML样式如下:
预期数据集:
我该如何获得所需的结果? 也许你可以推荐一些涵盖T-SQL + XML + XQuery解释和示例的好资源?
<simple>
<propertyid>
<value>p1</value>
<value>p2</value>
<value>p3</value>
<value>p4</value>
</propertyid>
<complexid>
<value>c1</value>
<value>c2</value>
<value>c3</value>
</complexid>
</simple>
我试图做类似的事情(每次在TSQL中处理XML时,我都感到痛苦,所以我的代码是错误的):
;WITH source AS (
SELECT CAST(@xmlstring AS XML) AS x
)
SELECT
items.item.query('.')
FROM source
CROSS APPLY x.nodes('/simple/*/value') AS items(item)
预期数据集:
ColumnName Value
------------------------
propertyid p1
propertyid p2
propertyid p3
propertyid p4
complexid c1
complexid c2
complexid c3
我该如何获得所需的结果? 也许你可以推荐一些涵盖T-SQL + XML + XQuery解释和示例的好资源?