iClient for Leaflet API如何实现根据a字段统计多边形或圆域范围内的要素的b字段
已尝试:
使用 L.supermap.queryService(url).queryByGeometry 和 L.supermap.queryService(url).queryByDistance 无法得到统计结果
使用 L.supermap.queryService(url).queryBySQL 可以统计,但无法传递空间条件(geometry参数)
您好, L.supermap.queryService(url).queryBySQL您是怎么统计的呢,范围查询api可以参考这个https://iclient.supermap.io/web/apis/leaflet.html
您可以参考这个问题http://qa.supermap.com/61626
http://qa.supermap.com/61626 这个我看过了 实现不了我的需求 他是用getFeaturesBySQL 这个也不能传geometry条件
我需要能同时按空间条件(geometry)和属性条件(attributesFilter)统计,我觉得代码应该是写成如下形式
queryService.queryByGeometry(new SuperMap.QueryByGeometryParameters({ queryParams: [{ name: '', attributeFilter: `类型 <> 'abc'`, groupBy: '类型', fields: ['类型', 'sum(area) as area', 'count(1) as num'], }], geometry, }), callback);
但上述代码不能正常返回结果,官方文档也没有相应的demo
重点是 能同时传递geometry, attributeFilter, groupBy, fields参数 且fields参数里存在 形如 sum(fieldname) as alias 的表达式