문제

I have the following xml

declare @xml xml = '<Values><a>AAA</a><b>BBB</b></Values>';
select @xml.query('for $k in /Values return concat(",@", "=''", $k, "''")')

It returns

,@='AAABBB'

However I expect

,@a='AAA',@b='BBB'

How to write the xquery?

도움이 되었습니까?

해결책

I figured it out myself.

declare @xml xml = '<Values><a>AAA</a><b>BBB</b></Values>';
select @xml.query('for $k in /Values/* 
    return concat(",@", fn:local-name($k), "=''", $k, "''")')
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top