geoserver的ECQL查询

ECQL Reference — GeoServer 2.24.x User Manual

CQL and ECQL — GeoServer 2.24.x User Manual

ECQL是CQL的扩展,类似sql查询,比ogc的xml格式简单,可以应用在wfs和wms查询上。

通过可视化页面查看过滤效果,默认视图

主键不会出现在properties中,因此不能使用属性查询的方式

主键查询多个

主键查询多个

属性查询

属性模糊查询

数字字段的between范围查询

or

空间查询,要注意空间字段

&cql_filter=BBOX(geom,120.26924,31.90386,120.32910,31.92824,'EPSG:4326')

给定的多边形完全包含哪些,与CONTAINS语义相反

&cql_filter=WITHIN(geom, POLYGON(( 120.271837299803238 31.89261367615611 , 120.234190022869583 31.872563976946228,120.280059118903694 31.824387001866363 ,120.315687001672345 31.878045189679863, 120.271837299803238 31.89261367615611 )))

给定的多边形与哪些相交,包含完全含在里面的,与DISJOINT数据相反

&cql_filter=INTERSECTS(geom, POLYGON(( 120.271837299803238 31.89261367615611 , 120.234190022869583 31.872563976946228,120.280059118903694 31.824387001866363 ,120.315687001672345 31.878045189679863, 120.271837299803238 31.89261367615611 )))

与给定的多边形不相交的,与INTERSECTS数据相反

&cql_filter=DISJOINT(geom, POLYGON(( 120.271837299803238 31.89261367615611 , 120.234190022869583 31.872563976946228,120.280059118903694 31.824387001866363 ,120.315687001672345 31.878045189679863, 120.271837299803238 31.89261367615611 )))

与给定的多边形相交的,不包含完全含在里面的

&cql_filter=OVERLAPS(geom, POLYGON(( 120.271837299803238 31.89261367615611 , 120.234190022869583 31.872563976946228,120.280059118903694 31.824387001866363 ,120.315687001672345 31.878045189679863, 120.271837299803238 31.89261367615611 )))

哪些包含给定的多边形,与WITHIN语义相反

&cql_filter=CONTAINS(geom, POLYGON((120.277606997417578 31.876170037955209 , 120.270683360280358 31.867515491533677 , 120.284963361875882 31.857274278268196 ,120.277606997417578 31.876170037955209)))

### 关于 GeoServer 中的属性查询GeoServer 中执行属性查询主要通过 Web Feature Service (WFS) 实现。WFS 支持对地理要素数据(即矢量数据,具有几何信息和属性)进行插入、更新、删除及检索的操作[^3]。 对于具体的属性查询实现方式,在客户端可以构建特定条件下的 Filter 请求发送给服务器端。Filter 是 OGC 提供的一种标准接口,允许用户定义复杂的查询逻辑,包括但不限于空间关系运算符、比较运算符等。当涉及到非空间字段上的筛选时,则更多依赖后者完成任务目标。例如: ```xml <wfs:GetFeature service="WFS" version="1.1.0" xmlns:wfs="http://www.opengis.net/wfs"> <wfs:Query typeName="topp:states"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>STATE_NAME</ogc:PropertyName> <ogc:Literal>Pennsylvania</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </wfs:Query> </wfs:GetFeature> ``` 上述 XML 片段展示了如何向名为 `topp:states` 的图层发起针对 `STATE_NAME='Pennsylvania'` 这一条件的数据获取请求。这里使用了 `<ogc:PropertyIsEqualTo>` 来表达相等判断,并指定了要匹配的具体列名 (`STATE_NAME`) 和期望值 ('Pennsylvania')。 除了等于之外,OGC Filters 还提供了诸如大于/小于、包含在内的多种谓词用于满足不同场景下复杂多样的业务需求。同时也可以组合多个过滤器形成更精细的选择语句。 为了便于开发者快速上手并掌握这一功能的应用方法,官方文档中通常会给出详细的 API 参考手册以及丰富的实例演示材料,建议查阅最新版本的手册获得最全面的帮助和支持[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值