ECQL参考¶
本节提供ECQL语言语法的参考。完整的语言语法记录在GeoTool中 ECQL BNF definition
语法说明¶
下面的章节描述了主要的语言结构。每个构造都列出了它的所有语法选项。每个选项都被定义为其他构造的序列,或者以递归的方式定义自己。
作为ECQL语言一部分的符号显示在
code font
.所有其他符号都是语法描述的一部分。ECQL关键字不区分大小写。
竖线符号' | '表示可以选择关键字。
括号 [ … ] '分隔语法是可选的。
大括号' {{ … }} '分隔可能出现零次或更多次的语法。
条件¶
过滤条件是一个谓词,或者是其他条件的逻辑组合。
Syntax |
Description |
单谓词表达式 |
|
条件的结合或分离 |
|
|
条件的否定 |
|
支架 |
谓语¶
谓词是布尔值表达式,用于指定值之间的关系。
Syntax |
Description |
比较运算 |
|
测试值是否位于范围内或范围外(包含该范围) |
|
表情 [ |
简单的模式匹配。 like-pattern 使用 |
测试表达式值是否在一组值中 |
|
测试功能ID值是否在给定集合中。ID值是整数或字符串文本 |
|
表情 |
测试值是否为(非)空 |
属性 |
测试FeatureType是否具有给定的属性 |
|
始终包括(排除)应用此筛选器的功能 |
时间谓词¶
时间谓词指定时间值表达式与时间或时间段的关系。
Syntax |
Description |
测试时间值是否在时间点之前 |
|
测试时间值是早于时间段还是在时间段内 |
|
测试时间值是否在某个时间段内 |
|
测试时间值是否在时间段内或之后 |
|
测试时间值是否在时间点之后 |
空间谓词¶
空间谓词指定几何值之间的关系。拓扑空间谓词 (INTERSECTS
, DISJOINT
, CONTAINS
, WITHIN
, TOUCHES
CROSSES
, OVERLAPS
和 RELATE
)根据OGC中描述的DE-9IM模型定义 Simple Features for SQL 规范。
Syntax |
Description |
测试两个几何图形是否相交。相反的 |
|
测试两个几何图形是否不相交。相反的 |
|
测试第一个几何图形是否拓扑包含第二个几何图形。相反的 |
|
测试第一个几何图形是否在第二个几何图形内拓扑。相反的 |
|
测试两个几何图形是否接触。如果几何图形至少有一个共同点,则它们会相互接触,但它们的内部不相交。 |
|
测试两个几何图形是否交叉。如果几何图形有一些但不是所有内部点相同,则会交叉 |
|
测试两个几何图形是否重叠。几何图形重叠,如果它们具有相同的尺寸,至少有一个点彼此不共享,并且两个几何图形内部的交叉点与几何图形本身具有相同的尺寸。 |
|
测试两个几何图形是否拓扑相等 |
|
测试几何图形是否具有由de-9im矩阵指定的空间关系 模式 .de-9im模式是使用字符指定的长度为9的字符串。 |
|
测试两个几何图形之间的距离是否不超过指定的距离。 距离 是距离公差的无符号数值。 单位 是其中之一 |
|
类似 |
|
测试几何图形是否与由其最小和最大X和Y值指定的边界框相交。可选 CRS 是包含SRS代码的字符串(例如, |
表情¶
表达式指定属性、文字或计算值。值的类型由表达式的性质决定。标准 PEMDAS 使用评估顺序。
Syntax |
Description |
功能属性的名称 |
|
文字值 |
|
算术运算 |
|
通过评估 filter function 参数为零或更多。 |
|
|
支架 |
属性¶
属性名称表示特征属性的值。
简单的属性名是字母和数字的序列,
带双引号的属性名可以是任何字符序列。
字面意义的¶
文本指定各种类型的常量值。
Type |
Description |
数 |
整数或浮点数。支持科学记数法。 |
布尔 |
|
弦 |
由单引号分隔的字符串文本。要在字符串中包含单引号,请使用两个单引号: |
几何图形 |
Geometry in WKT or EWKT format.
WKT is defined in the OGC Simple Features for SQL specification.
All standard geometry types are supported:
|
Time |
格式为的UTC日期/时间值 |
持续时间 |
A time duration specified as |
时间段¶
以几种不同格式指定一段时间。
Syntax |
Description |
由开始和结束时间指定的期间 |
|
在给定时间之前由持续时间指定的时间段 |
|
由给定时间之后的持续时间指定的时间段 |