本文概述
XQuery 1.0, XPath 2.0和XSLT 2.0共享相同的函数库。
一系列不同类型的XQuery函数:
- 访问器函数
- 错误和跟踪函数
- 数值函数
- 字符串函数
- AnyURI函数
- 布尔函数
- 持续时间/日期/时间函数
- QName函数
- 节点函数
- 序列函数
- 上下文函数
函数以fn:前缀指定。例如:fn:string()。但是fn:是名称空间的默认前缀, 因此在调用函数时不必为前缀fn。
访问器函数
Index | Name | Description |
---|---|---|
1) | fn:node-name(node) | 它用于返回参数节点的节点名称。 |
2) | fn:nilled(node) | 它用于返回一个布尔值, 该布尔值指示参数节点是否为nil。 |
3) | fn:data(item.item, …) | 它用于获取一系列项目并返回一系列原子值。 |
4) | fn:base-uri() fn:base-uri(node) |
它返回当前或指定节点的base-uri属性的值。 |
5) | fn:document-uri(node) | 它返回指定节点的document-uri属性的值。 |
错误和跟踪函数
Index | Name | Description |
---|---|---|
1) | fn:错误()fn:错误(错误)fn:错误(错误, 描述)fn:错误(错误, 描述, 错误对象) | 示例:错误(fn:qname(‘http://example.com/test’, ‘err:toohigh’), ‘错误:价格太高’)结果:返回http://example.com/test#toohigh字符串”错误:价格过高”给外部处理环境。 |
2) | fn:trace(值, 标签) | 它用于调试查询。 |
数值函数
Index | Name | Description |
---|---|---|
1) | fn:abs(num) | 它返回参数的绝对值。例如:abs(3.14)结果:3.14 |
2) | fn:abs(num) | 它返回参数的绝对值例如:abs(3.14)结果:3.14示例:abs(-3.14)结果:3.14 |
3) | fn:ceiling(num) | 它返回大于number参数的最小整数, 例如:ceiling(3.14)结果:4 |
4) | fn:floor(num) | 它返回不大于number参数的最大整数, 例如:floor(3.14)结果:3 |
5) | fn:round(num) | 它用于将number参数四舍五入为最接近的整数例如:round(3.14)结果:3 |
6) | fn:round-half-to-even() | 示例:一半至一半(0.5)结果:0示例:一半至一半(1.5)结果:2示例:一半至一半(2.5)结果:2 |
字符串函数
XQuery中使用了很多字符串函数, 但是这里我们使用的是选定的函数。
XQuery的常用字符串操作函数列表:
Index | Name | Description |
---|---|---|
1) | string-length($ string as xs:string)as xs:integer | 它返回字符串的长度。 |
2) | concat($ input as xs:anyatomictype?)as xs:string | 它返回连接的字符串作为输出。 |
3) | string-join($ sequence as xs:string *, $ delimiter as xs:string)as xs:string | 它返回由定界符分隔的序列中项目的组合。 |
布尔值函数
Index | Name | Description |
---|---|---|
1) | fn:boolean(arg) | 它用于返回数字, 字符串或节点集的布尔值。 |
2) | fn:not(arg) | 它指定通过应用Boolean()函数首先将参数减为布尔值。如果布尔值是false, 则返回true;如果布尔值是true, 则返回false。例如:not(true())结果:false |
3) | fn:true() | 它返回布尔值true示例:true()结果:true |
4) | fn:false() | 它返回布尔值false例如:false()结果:false |
时间和日期函数
XQuery支持很多时间和日期函数, 但是在这里, 我们提供所选的函数。
XQuery提供的一些常用日期和时间函数的列表:
Index | Name | Description |
---|---|---|
1) | current-date() | 它用于返回当前日期。 |
2) | current-time() | 它用于返回当前时间。 |
3) | current-datetime() | 它用于返回当前日期和当前时间。 |
评论前必须登录!
注册