XQuery怎么查询XML XQuery基础语法入门教程

admin 百科 17
XQuery 是声明式 XML 查询语言,核心为路径表达式(如 /bookstore/book)、FLWOR 表达式(for-where-order by-return)、条件构造(if-then-else)、命名空间声明及外部文档加载(doc()),强调结果而非过程。

XQuery怎么查询XML XQuery基础语法入门教程-第1张图片-佛山资讯网

XQuery 查询 XML 的核心是“用表达式描述你要什么”,而不是一步步告诉它怎么查。它不像编程语言那样写流程,更像 SQL——声明式、简洁、聚焦结果。

路径表达式:最直接的查询方式

就像文件系统里的路径,XQuery 用 /// 定位节点:

  • /bookstore/book:从根开始,找 <bookstore></bookstore> 下的直接子元素 <book></book>
  • //title:在整个文档任意层级找所有 <title></title> 元素(不关心位置)
  • /bookstore/book[1]/title/text():取第一个 <book></book> 的标题文本内容
  • 属性要用 @ 前缀,比如 /bookstore/book/@category 获取 category 属性值

FLWOR 表达式:处理复杂逻辑的主力

类似 SQL 的 SELECT-FROM-WHERE,适合过滤、排序、组合多组数据:

  • for $b in doc("books.xml")//book:遍历所有 book 节点,绑定到变量 $b
  • where $b/@category = "fiction":只保留类别为 fiction 的书
  • order by $b/title:按标题升序排列(支持 descending
  • return <name>{data($b/title)}</name>:构造新 XML 片段,插入标题文本

注意:forreturn 必须成对出现;let 可用于预计算中间值,比如 let $price := $b/price

条件与构造:动态生成结果

查询不只是提取,还能根据条件返回不同结构:

标签: go 编程语言 排列

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~