`
liugang594
  • 浏览: 978786 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

XQuery简介与使用一

阅读更多
  • 一、XQuery简介

 

可以把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():取子串

    也可以自定义函数。

     

    分享到:
    评论

    相关推荐

      XQuery权威指南(简码·扫描版)

      第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语言的设计...

      Web Services 教程

      XQuery 与 XPath 50 XQuery - 应用举例 50 XQuery 是一个 W3C 推荐标准 50 XQuery 实例 50 XML 实例文档 51 如何从 "books.xml" 选取节点? 52 XQuery FLWOR 表达式 53 XML 实例文档 53 如果使用 FLWOR 从 "books....

      159-其他资源-JavaCC、解析树和 XQuery 语法,第 2 部分1

      简介:本文的第1部分简要讨论了语法、解析器和BNF。然后它介绍了 JavaCC,一个流行的解析器生成器。第 2 部分演示了如何修改第 1 部分中的样本代码,这样

      DB2-730中文教材--适合数据库开发人员以及对数据库有兴趣的人

      • 第 1 部分:DB2 规划 本教程介绍 DB2 9 产品和工具的基本知识,以及描述不同类型的数据应用程序...• 第 7 部分:XQuery 简介 本教程将解释几个基本的 XQuery 概念,并讲解如何编写处理 DB2 XML 数据的简单 XQuery。

      db2 9 730 中文教程

      • 第 1 部分:DB2 规划 本教程介绍 DB2 9 产品和工具的基本知识,以及描述不同类型的数据应用程序...• 第 7 部分:XQuery 简介 本教程将解释几个基本的 XQuery 概念,并讲解如何编写处理 DB2 XML 数据的简单 XQuery。

      xml入门经典(第5版)

      展示如何使用XQuery创建新的XML文档并查询已有数据;解释如何使用DOM、XPath和LINQ to XML提取数据;验证特定用于处理大文档的编程技术;详细描述如何展示不同系统使用的数据;演示一个用于出版业的实际的XML p 资源...

      1.ASP.NET.2.0.XML.高级编程(第3版) [1/3]

      第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...

      Microsoft SQL Server 2005技术内幕: T-SQ程序设计.pdf

       1.2 与字符相关的问题  模式匹配  区分大小写(Case-Sensitive)的筛选器  1.3 大型对象(Large Object,LOB)  MAX 说明符  BULK行集提供程序  1.4 隐式转换(Implicit Conversion)  标量表达式  筛选表达式...

      [XML入门经典(第4版)].(Beginning.XML.4th.Edition).(美)亨特,(美)拉夫特,(美)福思特.扫描版.pdf

      简介: 内容介绍: 《XML入门经典(第4版)》自第1版出版以来,一直是广大程序员学习XML的优秀入门教程。该书全面详实地介绍了XML的基本语法、基本用途和常用的开发工具和方法。全书共21章,分为8个专题。主要内容...

      XML高级编程 完整目录版 part1

      第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...

      Microsoft SQL Server 2005 Express Edition SP3

      Microsoft SQL Server 2005 Express Edition (SQL Server Express) 是一个免费且易于使用的 SQL Server 2005 版本,它替换了 Microsoft Desktop Engine (MSDE)。与 Microsoft Visual Studio 2005 集成之后,SQL ...

      XML 高级编程,完整目录版,便于阅读

      第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...

      XML高级编程 完整目录版 part2

      第一章,XML 技术简介 第二章,XmlReader类和XmlWriter类 第三章,XmlDocument 第四章,XPath 第五章,转换 第六章,ADO.NET 第七章,SQL Server 2000 和SqlXml 托管类 第八章,电子商务和XML 第九章,XQuery 第十章...

      SQL Server 2008 R2详解手册.pdf

      * 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 ...

      db2数据库入门官方教程(中文版)

      资源简介 第 1章 – DB2 Express-C是什么?..........................................................................................13 1.1免费开发、部署和分发… 无限制!....................................

    Global site tag (gtag.js) - Google Analytics