【发布时间】:2018-02-20 10:14:40
【问题描述】:
我正在尝试使用 Azure 搜索服务来查询基于空间数据的数据。
我想根据地理位置过滤数据。在搜索资源管理器中尝试的查询是search=*&$filter=geo.distance(geolocation, geography'POINT(9.2869001 47.3532887)') le 50
为地理位置字段定义的类型是 Ed.GeographyPoint 并且属性集是可过滤和可检索的
但我没有得到结果,而是在结果窗口中收到消息“预期为 JSON 对象、数组或文字”。 查询有什么问题在这里。 我正在使用 Azure 的标准计划,使用的 API 版本是 API 版本:2016-09-01
【问题讨论】:
-
在有人说“阅读文档”之前,docs 中的示例是:
$filter=geo.distance(location, geography'POINT(-122.131577 47.678581)') le 10,基本相同:D -
如果 $ 被删除,那么整个数据都会作为结果出现。没有过滤。
-
是的,$ 是强制性的。 OData 过滤器始终是 $filter。
标签: azure geospatial azure-cognitive-search spatial-query