SQL SERVER 2005 的XML查询问题? 在Sql 2005中可以通过sp_xml_preparedocument与OPENXML获取节点的属性,如何通过节点的值查询节点属性呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在2005下有强大的XQUERY支持,建议不要再去使用准备废弃的2000下的解析功能。楼主最好举例说明你的需求。 看看这个,内容多,就不贴了http://book.csdn.net/bookfiles/583/http://book.csdn.net/bookfiles/583/10058319106.shtml declare @x xmlset @x = '<root> <node id="1">a</node> <node id="2">b</node></root>'declare @value varchar(10)set @value = 'a'select t.c.value('@id','int') as attr_valuefrom @x.nodes('root/node') t(c)where t.c.value('.','varchar(10)') = @value/**2**/看看这个例子,也许是你要的。 对于多个值,可用NODE方法,但是如果只是返回一个值的话,可以象下面这样:declare @x xmlset @x = '<root> <node id="1">a</node> <node id="2">b</node></root>'declare @value varchar(10)set @value = 'a'select @x.value('(root/node/text()[.=sql:variable("@value")]/../@id)[1]','int') My Sql中建表时的错误该怎么解决 触发器问题 关于如何取秒的数据 求助:查询问题 急 天生我材必有用,千分散尽还复来 ,感谢诸位大老师 求一个sql语句 我想问大家一下,怎么实现分类汇总~~很急的,请大家帮我 初学pro c_c++的问题 Oracle中的 number数据类型是否和SQL SERVER 中的numeric 相同? 求救! 记录合并的问题 关于跨库查询的问题.
楼主最好举例说明你的需求。
http://book.csdn.net/bookfiles/583/
http://book.csdn.net/bookfiles/583/10058319106.shtml
declare @x xmlset @x = '
<root>
<node id="1">a</node>
<node id="2">b</node>
</root>
'declare @value varchar(10)set @value = 'a'select
t.c.value('@id','int') as attr_value
from @x.nodes('root/node') t(c)
where t.c.value('.','varchar(10)') = @value/**
2
**/看看这个例子,也许是你要的。
<root>
<node id="1">a</node>
<node id="2">b</node>
</root>
'declare @value varchar(10)set @value = 'a'select @x.value('(root/node/text()[.=sql:variable("@value")]/../@id)[1]','int')