如何在GeoServer的WFS中用CQL过滤器基于当前时间过滤图层
GeoServer WFS 基于当前时间自动过滤要素的实现方法
GeoServer的ECQL内置了NOW()函数,可直接获取服务器当前时间,完美解决你无需手动输入日期的过滤需求。
核心CQL过滤器表达式
针对你的需求,直接使用以下表达式即可实时筛选当前时间处于Date_start和Date_end之间的要素:
Date_start < NOW() AND Date_end > NOW()
日期精度调整(可选)
如果仅需要匹配日期部分(忽略时分秒),可以用CURRENT_DATE()替代NOW():
Date_start < CURRENT_DATE() AND Date_end > CURRENT_DATE()
注意事项
- 确认图层的
Date_start和Date_end字段为标准日期/时间类型(如DATE、TIMESTAMP),否则函数无法正常生效 NOW()返回服务器当前的完整时间(含时分秒),CURRENT_DATE()仅返回年月日,根据业务需求选择对应函数即可
内容的提问来源于stack exchange,提问作者work
相关产品推荐
相关产品推荐

