sql-server – 使用SQL选择单个xml节点
发布时间:2020-05-23 10:06:41 所属栏目:MsSql 来源:互联网
导读:我有一个很大的 XML音符与许多节点. 有没有办法只能从较大的XML中选择一个节点及其所有内容? 我正在使用sql 2005 如果您想要获得XML的一部分,您应该使用 query() Method. declare @XML xmlset @XML = root row1 value1/value /row1 row2 value2
|
我有一个很大的 XML音符与许多节点. 有没有办法只能从较大的XML中选择一个节点及其所有内容? 我正在使用sql 2005 解决方法如果您想要获得XML的一部分,您应该使用 query() Method.declare @XML xml
set @XML =
'
<root>
<row1>
<value>1</value>
</row1>
<row2>
<value>2</value>
</row2>
</root>
'
select @XML.query('/root/row2')
结果: <row2> <value>2</value> </row2> 如果你想要特定节点的值,你应该使用value() Method. select @XML.value('(/root/row2/value)[1]','int')
结果: 2 更新: 如果你想将你的XML分割成多行,你可以使用nodes() Method. 得到价值观: declare @XML xml
set @XML =
'
<root>
<row>
<value>1</value>
</row>
<row>
<value>2</value>
</row>
</root>
'
select T.N.value('value[1]','int')
from @XML.nodes('/root/row') as T(N)
结果: (No column name) 1 2 获取整个XML: select T.N.query('.')
from @XML.nodes('/root/row') as T(N)
结果: (No column name) <row><value>1</value></row> <row><value>2</value></row> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
