可以把XQuery理解成XML中SQL语言。XQuery可以用来:
提取信息以便在网络服务中使用
生成摘要报告
把 XML 数据转换为 XHTML
为获得相关信息而搜索网络文档
要获取xml文档,需要使用doc()函数,例如:doc("books.xml")
得到doc之后,我们就可以如XPath一样取值,例如:doc("books.xml")//book/title,取得当前文档中所以book元素下的title元素。
同XPath一样,也可以使用限定词来取值,例如:doc("books.xml")//book[price=30]/title,取得当前文档中所以价格等于30的书的title元素。
规则:
XQuery 对大小写敏感
XQuery 的元素、属性以及变量必须是合法的 XML 名称。
XQuery 字符串值可使用单引号或双引号。
XQuery 变量由 “$” 并跟随一个名称来进行定义,举例,$bookstore
XQuery 注释被 (: 和 :) 分割,举例,(: XQuery 注释 :)
二、XQuery语句和表达式
语句简单说起来就是FLWOR,分别是:for,let,where,order by和return的首字母。
for..in..:用于遍历,例如: for $x in doc("books.xml")//book,在所有的book元素中遍历,其中$x是临时变量
let:赋值语句,例如:let $x:= 3,把3赋给x;let $x:=(1 to 5),把x赋值为1到5 (1 2 3 4 5)
where:条件判断语句,例如:where $x>30 and $x<60,可以用and或or把多个条件联接
order by:排序语句,例如:order by $x,按变量x的值排序,可以使用“,”进行多重排序。
return:返回语句,用于返回结果,例如:return <li>$x</li>
在XQuery中可以使用if..then..else条件表达式。例如:
if ($x>30) then (..) else (..);注:if 和else的()是必须的。
选择和过滤:
可以使用to来决定遍历的值或次数,例如:for $x in (1 to 5)
可以使用at来纪录迭代的次数,例如: for $x at $i in doc("books.xml")//book
可以使用多个in来实现多重迭代,例如:for $x in .., $y in ...
三、XQuery元素关系
和XPath一样有七种元素。其中无父子关系的值称为基本值,例如文本结点内容,属性值等等;基本值或结点称为item;结点与结点之间可能有父子或辈份关系,例如父结点、子结点、兄弟结点、先辈结点或晚辈结点。
四、查询结果
可以通过增添元素来修改或转换返回结果。例如:
<html><body>
<ul>
for $x in doc("books.xml")//book/title
return <li>$x</li>
</ul
</body>
五、函数
XPath、XQuery和XSL使用相同的函数库。具体的请查询帮助。以下举几例:
- uppercase():将文字大写化
- subString():取子串
也可以自定义函数。
分享到:
相关推荐
第1章 XQuery介绍 1.1 什么是XQuery 1.2 转向XQuery 1.3 路径表达式 1.4 FLWOR表达式 1.5 添加XML元素和属性 1.6 函数 1.7 连接 1.8 求和与分组 第2章 XQuery基础 2.1 XQuery语言的设计...
XQuery 与 XPath 50 XQuery - 应用举例 50 XQuery 是一个 W3C 推荐标准 50 XQuery 实例 50 XML 实例文档 51 如何从 "books.xml" 选取节点? 52 XQuery FLWOR 表达式 53 XML 实例文档 53 如果使用 FLWOR 从 "books....
简介:本文的第1部分简要讨论了语法、解析器和BNF。然后它介绍了 JavaCC,一个流行的解析器生成器。第 2 部分演示了如何修改第 1 部分中的样本代码,这样
• 第 1 部分:DB2 规划 本教程介绍 DB2 9 产品和工具的基本知识,以及描述不同类型的数据应用程序...• 第 7 部分:XQuery 简介 本教程将解释几个基本的 XQuery 概念,并讲解如何编写处理 DB2 XML 数据的简单 XQuery。
• 第 1 部分:DB2 规划 本教程介绍 DB2 9 产品和工具的基本知识,以及描述不同类型的数据应用程序...• 第 7 部分:XQuery 简介 本教程将解释几个基本的 XQuery 概念,并讲解如何编写处理 DB2 XML 数据的简单 XQuery。
展示如何使用XQuery创建新的XML文档并查询已有数据;解释如何使用DOM、XPath和LINQ to XML提取数据;验证特定用于处理大文档的编程技术;详细描述如何展示不同系统使用的数据;演示一个用于出版业的实际的XML p 资源...
第1章 XML介绍 \r\n 1.1 XML入门 \r\n 1.1.1 自描述数据 \r\n 1.1.2 基本术语 \r\n 1.1.3 XML文档的组成部分 \r\n 1.2 XML技术 \r\n 1.2.1 DTD \r\n 1.2.2 XDR \r\n 1.2.3 XSD \r\n 1.2.4 XSLT \r\n 1.2.5...
1.2 与字符相关的问题 模式匹配 区分大小写(Case-Sensitive)的筛选器 1.3 大型对象(Large Object,LOB) MAX 说明符 BULK行集提供程序 1.4 隐式转换(Implicit Conversion) 标量表达式 筛选表达式...
简介: 内容介绍: 《XML入门经典(第4版)》自第1版出版以来,一直是广大程序员学习XML的优秀入门教程。该书全面详实地介绍了XML的基本语法、基本用途和常用的开发工具和方法。全书共21章,分为8个专题。主要内容...
第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...
Microsoft SQL Server 2005 Express Edition (SQL Server Express) 是一个免费且易于使用的 SQL Server 2005 版本,它替换了 Microsoft Desktop Engine (MSDE)。与 Microsoft Visual Studio 2005 集成之后,SQL ...
第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...
第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...
* Develop applications using SQL Server 2008 enhancements to T-SQL and SQLCLR, .NET integration, LINQ to SQL, XML, and XQuery 作者介绍: Ray Rankins, president of Gotham Consulting Services, has ...
资源简介 第 1章 – DB2 Express-C是什么?..........................................................................................13 1.1免费开发、部署和分发… 无限制!....................................