时间:2022-12-02 02:30:01 | 来源:信息时代
时间:2022-12-02 02:30:01 来源:信息时代
XQuery查询语言 : W3C在1998年提出的XML查询语言。XQuery基于XPath,但是比XPath表现更丰富,功能更强大,能够支持各种XML数据的查询和XML数据树的重构。每个XQuery查询包含一个或多个查询表达式。常用的XQuery的语法包括:路径表达式、序列表达式、算术表达式、布尔表达式、FLWOR表达式、条件表达式、构造器等。
FLWOR是XQuery最重要的语法类型,类似于关系数据库中的SQL查询。For子句将一个或多个变量表达式结合在一起,每个变量被赋值为一个序列,For子句通过将结点绑定到变量,传送到下一个步骤,实现循环遍历序列中的每个结点;Let子句将变量直接和一个完整的表达式绑定在一起,与For子句循环遍历每个结点不同,Let子句将变量直接绑定到结点序列: Where子句根据条件对绑定的变量进行过滤; Order子句能够指定结果的顺序; Return子句构造查询结果。这几个子句可以任意嵌套。
条件表达式由If-Then-Else语句组成,类似于编程语言中的选择语句。序列由一个或多个项组成,每个项为一个结点或者一个原子值。XQuery提供了若干操纵序列的函数,包括Union、Intersect和Except。XQuery在表达式中支持定量表达式,包括存在谓词和全称谓词。
下面是一个简单的XQuery查询,找出所有年龄大于20的学生,每个学生编号都放入〈studentnumber〉标签中:
For $stu in/department/student
Let $stuno:=$stu/student-number Where $stu/age〉20
Return 〈student-number〉$stuno
〈/student-number〉