XML XQuery

--XQuery 基于现有的 XPath 查询语言,并支持更好的迭代、更好的排序结果以及构造必需的 XML 的功能。

--1.声明一个 xml 类型的变量,然后使用 xml 数据类型的 query() 方法来查询此变量
DECLARE @x xml
SET @x = '<ROOT><a>111</a></ROOT>'
SELECT @x.query('/ROOT/a')

--查找属性aid=20的a节点
DECLARE @x xml
SET @x = '<ROOT>
   <a aid="10">10</a>
   <a aid="20">20</a>
      </ROOT>'
SELECT @x.query('/ROOT/a[@aid=20]')


--2.询是针对 AdventureWorks 数据库中 ProductModel 表的 xml 类型的 Instructions 列指定的。
--查找条件ProductModelID=7,属性LocationID=10的Location节点
SELECT Instructions.query('declare namespace AWMI="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";        
    /AWMI:root/AWMI:Location[@LocationID=10]
') as Result
FROM  Production.ProductModel
WHERE ProductModelID=7
--XQuery 包含命名空间声明(declare namespace AWMI=...)和查询表达式(/AWMI:root/AWMI:Location[@LocationID=10])。

DECLARE @x xml
SET @x = '<ROOT>
   <a aid="10">10</a>
   <a aid="20">20</a>
      </ROOT>'
SELECT @x.query('/ROOT/a[@aid=20]')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值