`
liugang594
  • 浏览: 987600 次
  • 性别: 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():取子串

    也可以自定义函数。

     

    分享到:
    评论

    相关推荐

      XML学习之XQuery 教程

      知识点一:XQuery 简介 * XQuery 是用于 XML 数据查询的语言 * XQuery 对 XML 的作用类似 SQL 对数据库的作用 * XQuery 被构建在 XPath 表达式之上 * XQuery 被所有主要的数据库引擎支持(IBM、Oracle、Microsoft ...

      xquery resource

      1. **XQuery简介**: XQuery是一种强大的查询语言,用于在XML文档中查找信息。它结合了XPath、SQL和传统编程语言的特点,使得处理XML数据变得更加灵活和高效。XQuery能够处理复杂的结构化数据,并能轻松地在大型XML...

      xquery参考手册.pdf

      ### 一、XQuery简介 XQuery是一种用于查询XML数据的强大语言,它允许用户以一种简洁且功能强大的方式检索、更新和操作XML文档中的数据。XQuery的设计目的是为了处理大量的结构化或半结构化的XML数据,同时也能够与...

      Xquery_example

      #### 一、XQuery简介 XQuery是一种强大的查询语言,专门用于处理XML数据。随着XML被广泛应用于多种场景中,包括网页、消息、书籍、会计数据、数据库表的XML表示、编程接口等,对XML进行有效查询的需求变得日益重要...

      XQuery查询工具

      1. **XQuery简介**: XQuery是W3C制定的一种查询语言,设计用于提取和处理XML数据。它结合了函数式编程和关系数据库查询语言的特性,使得XML数据的检索变得直观且高效。XQuery支持多种操作,如选择节点、组合节点、...

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

      - 如何将SQL与XQuery结合起来使用。 - **24.4 SQL/XML** - SQL/XML标准的简介。 #### 二十五、XSLT用户与XQuery - **25.1 XQuery和XPath** - XQuery与XPath的关系。 - **25.2 XQuery与XSLT** - XQuery与XSLT的...

      【学习 XQuery】.pdf

      1. **XQuery简介**:XQuery被设计用来查询和操作XML数据,不仅限于XML文件,还可以处理任何基于XML的数据源,如数据库。它建立在XPath表达式的基础上,允许用户通过路径表达式来定位XML文档中的元素和属性。 2. **...

      XQuery基础教程

      #### 一、XQuery简介 1. **定义**:XQuery是一种专门用于查询XML数据的语言,其地位对于XML相当于SQL对于关系型数据库的重要性。 - **XQuery与XML的关系**:XQuery是针对XML数据进行检索的语言,它能够有效地...

      XQuery快速入门

      XQuery简介 XQuery是W3C制定的一种查询语言,它的设计目标是让开发者能够以直观、简洁的方式查询XML文档。XQuery结合了函数式编程和XML的结构特性,允许对XML数据进行复杂的查询和转换。 ## 2. 基本语法 XQuery...

      《----------XQuery-------》

      #### 一、XQuery简介 XQuery是一种用于查询XML数据的语言,可以将其理解为针对XML数据的SQL语言。它使用XPath表达式来提取XML中的数据,并由W3C(World Wide Web Consortium)定义。 XQuery支持所有主要的数据库...

      db2-cert7307-a4.pdf

      #### 二、XQuery与DB2 9简介 **1. XQuery概述** XQuery是一种功能强大的查询语言,它能够直接处理XML数据,允许用户检索整个XML文档或其中的部分片段。XQuery不仅支持简单的数据检索,还可以进行复杂的条件逻辑...

      Web Data Managemenrt by Serge Abiteboul Ioana Manolescu

      - **XQuery简介**:XQuery是一种查询语言,用于从XML文档中检索和操纵数据。 - **XQuery数据模型**:XQuery处理的数据模型不仅限于文档,还包括序列和其他类型的数据。 - **XQuery表达式**:介绍了一些基本的XQuery...

      基于XML文档的关联规则挖掘算法XQ_Apriori的设计与实现

      #### 二、XML与XQuery简介 - **XML (Extensible Markup Language)**: 是一种标记语言,用于定义数据结构和存储数据,特别是在Web服务和其他应用程序之间交换数据时非常有用。它支持复杂的嵌套数据结构,非常适合...

      web-Harvest帮助手册

      **三、XQuery简介** XQuery是另一种用于查询XML数据的语言,它更加强调于查询的灵活性和表达性。XQuery可以处理XML文档的结构,同时还能进行聚合操作、排序、变量赋值等。在web-Harvest中,XQuery可以用于复杂的查询...

    Global site tag (gtag.js) - Google Analytics