读书人

遍历XML多谢各位

发布时间: 2013-11-09 17:06:47 作者: rapoo

遍历XML,谢谢各位
<column>
<LName ChineseName="name1" ShowOrder="0" />
<MRNADT ChineseName="name2" ShowOrder="1" />
<Gender ChineseName="name3" ShowOrder="2" />
</column>

说明:节点column为父节点,下面有多个子节点,而这些自己点的名字是随机的,怎么遍历column下的所有节点,并定位到该节点。比如,在不知道节点名字的情况下,如何取出LName节点。 xml sql
[解决办法]

引用:
那又怎么遍历节点column,取出所有节点名字和节点属性值


declare @x xml

select @x='
<column>
<LName ChineseName="name1" ShowOrder="0" />
<MRNADT ChineseName="name2" ShowOrder="1" />
<Gender ChineseName="name3" ShowOrder="2" />
</column>'


select c.value('local-name(.)','varchar(10)') '节点',
c.value('@ChineseName','varchar(10)') 'ChineseName',
c.value('@ShowOrder','varchar(10)') 'ShowOrder'
from @x.nodes('/column/*') as t(c)

/*
节点 ChineseName ShowOrder
---------- ----------- ----------
LName name1 0
MRNADT name2 1
Gender name3 2

(3 row(s) affected)
*/

读书人网 >SQL Server

热点推荐