2

ノード名/属性名が不明なxmlノード属性をTSQLでアンピボットする方法を探しています

DECLARE @Raw XML = '<contact id=1 firstname="liz" lastname="simple" email="liz@sample.com"/>'

次のような結果が必要です。

id           1
firstname    liz
lastname     simple
email        liz@sample.com
4

1 に答える 1

1

クエリ

DECLARE @Raw XML = '<contact id="1"
                     firstname="liz"
                     lastname="simple"
                     email="liz@sample.com"/>'
select n.n.value('local-name(.)', 'nvarchar(max)') name,
       n.n.value('.', 'nvarchar(max)') value
  from @raw.nodes('/*/@*') n(n)

結果

name        value
----------- ----------------
id          1
firstname   liz
lastname    simple
email       liz@sample.com
于 2012-12-11T20:38:30.943 に答える