sql-server – 使用SQL选择单个xml节点
发布时间:2020-12-12 08:44:19 所属栏目:MsSql教程 来源:网络整理
导读:我有一个很大的 XML音符与许多节点. 有没有办法只能从较大的XML中选择一个节点及其所有内容? 我正在使用sql 2005 解决方法 如果您想要获得XML的一部分,您应该使用 query() Method. declare @XML xmlset @XML = 'root row1 value1/value /row1 row2 value2/va
我有一个很大的
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> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |