mssql sqlserver xml函数之value用法简介


摘要:
下文讲述xml函数之value的用法
实验环境:sqlserver 2008 R2



value简介


value功能说明:


value语法说明:
value(XQuery,SQLType)
value参数说明:
XQuery:
为一个字符串参数,需为一个xml表达式,
此处指定XQuery只能返回一个值(通常需指定序号[1]),否则进行value运算时,将返回相应的错误信息
SQLType:
返value的数据类型,
SQLType不能为xml数据类型、CLR用户定义类型、image、text、ntext、 sql_variant这6种类型,
SQLType可以为用户自定义数据类型,及其它sqlserver自带的数据类型。
value返回值:
value函数返回值得数据类型由SQLType决定


value应用举例

declare @xmlInfo xml

 set @xmlInfo ='
 < root >
 < userDefine keyId="1" >
  < sort >
    < sortName>博客< /sortName >
    < sortInfo>sql教程博客< /sortInfo >
  < /sort>
< /userDefine >
< userDefine keyId="2" >
  < sort >
    网站< /sortName >
    www.maomao365.com< /sortInfo >
  < /sort >
< /userDefine >
< /root >'
 
 ---获取xml标签中的相应值
 SELECT @xmlInfo.value('(/root/userDefine[1]/sort)[1]','nvarchar(100)')   as t,
   @xmlInfo.value('(/root/userDefine[1]/sort/sortInfo)[1]','nvarchar(100)')   as t
---获取属性
 SELECT @xmlInfo.value('(/root/userDefine[2]/@keyId)[1]','nvarchar(100)')   as t 


注意事项:
无相应的匹配值时,将返回NULL

实例脚本下载:mssql_7483_xml_value_实例脚本下载