XQuery选择和过滤
发表于:2024-11-13 作者:千家信息网编辑
千家信息网最后更新 2024年11月13日,解释 XQuery 最佳方式是这样讲:XQuery 相对于 XML 的关系,等同于 SQL 相对于数据库表的关系。XQuery 被设计用来查询 XML 数据 - 不仅仅限于 XML 文件,还包括任何可
千家信息网最后更新 2024年11月13日XQuery选择和过滤
解释 XQuery 最佳方式是这样讲:XQuery 相对于 XML 的关系,等同于 SQL 相对于数据库表的关系。XQuery 被设计用来查询 XML 数据 - 不仅仅限于 XML 文件,还包括任何可以 XML 形态呈现的数据,包括数据库。 |
选择和过滤元素
正如在前面的章节所看到的,我们使用路径表达式或 FLWOR 表达式来选取和过滤元素。
请看下面的 FLWOR 表达式:
for $x in doc("books.xml")/bookstore/book where $x/price>30 order by $x/title return $x/title
• for - (可选) 向每个由 in 表达式返回的项目捆绑一个变量
• let - (可选)
• where - (可选) 设定一个条件
• order by - (可选) 设定结果的排列顺序
• return - 规定在结果中返回的内容
for 语句
for 语句可将变量捆绑到由 in 表达式返回的每个项目。for 语句可产生迭代。在同一个 FLWOR 表达式中可存在多重 for 语句。
如需在一个 for 语句中进行指定次数地循环,您可使用关键词 to :
for $x in (1 to 5) return{$x}
结果:
1 2 3 4 5
关键词 at 可用于计算迭代:
for $x at $i in doc("books.xml")/bookstore/book/title return{$i}. {data($x)}
结果:
1. Everyday Italian 2. Harry Potter 3. XQuery Kick Start 4. Learning XML
在 for 语句中同样允许多个 in 表达式。请使用逗号来分割每一个 in 表达式:
for $x in (10,20), $y in (100,200) returnx={$x} and y={$y}
结果:
x=10 and y=100 x=10 and y=200 x=20 and y=100 x=20 and y=200
let 语句
let 语句可完成变量分配,并可避免多次重复相同的表达式。let 语句不会导致迭代。
let $x := (1 to 5) return{$x}
结果:
1 2 3 4 5
where 语句
where 语句用于为结果设定一个或多个条件(criteria)。
where $x/price>30 and $x/price<100
order by 语句
order by 语句用于规定结果的排序次序。在这里,我们要根据 category 和 title 来对结果进行排序:
for $x in doc("books.xml")/bookstore/book order by $x/@category, $x/title return $x/title
结果:
Harry Potter Everyday Italian Learning XML XQuery Kick Start
return 语句:
return 语句规定要返回的内容。
for $x in doc("books.xml")/bookstore/book return $x/title
结果:
Everyday Italian Harry Potter XQuery Kick Start Learning XML
原文来自: https://www.linuxprobe.com/xquery-selection-filtering.html
语句
结果
表达式
数据
变量
迭代
元素
关键
关键词
内容
多个
数据库
条件
项目
排序
选择
相同
不仅仅
原文
形态
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苏州五指互联网科技有限公司
设备接入网络安全
网络安全的最高等级是多少
某软件开发企业8月进购生产
智能软件开发咨询报价
荔湾区光纤网络技术开发咨询报价
个人买一台服务器多少钱
互联网媒体平台算高科技产业
其他电脑怎么连接数据库
设置网络安全宣传标语
云服务器镜像可以改吗
网络安全维护考什么
怎么加qq宝可梦服务器
江西服务器机柜供应商家
净化网络安全管理
如何连接矿池服务器
厦门热力图软件开发
服务器ftp设置
淮北app软件开发定制公司
天门网络安全技术公司
改变数据库语句
go分析的数据库来源
服务器端开发教程
与网络安全有关的礼品
服务器硬盘空间大
数据库对列进行拆分
软件开发周期
命令行进数据库
电脑软件开发非标
内网服务器绑定域名