The App Engine Search API有一个GeoPoint字段。是否可以使用它进行radius搜索?就像在中一样,给定一个GeoPoint,查找落入特定半径内的所有文档。
到目前为止,看起来GeoSpecial Query只接受邀请,所以我正在寻找一个对我来说容易理解的简单替代方案。
此外,如果这很重要,我正在使用objectify,而this answer对我来说太复杂了,无法理解如何实现它。
发布于 2015-11-29 01:09:46
对于radius搜索,请使用proximitySearch而不是bestBboxSearchCells (在参考url中使用):
GeocellManager.proximitySearch(Point center, int maxResults, double maxDistance //...有关方法的详细信息,请参阅此链接:https://github.com/theganyo/javageomodel/blob/ce43c507ff671eb6f0998f7c7d78fd0c3877dbe7/geocell/src/main/java/com/beoui/geocell/GeocellManager.java
发布于 2017-01-12 03:05:46
正如Alex Martelli所指出的那样,查询字符串"distance(store_location, geopoint(-33.857, 151.215)) < 45000"将有效地产生您所寻求的结果,将geopoint()替换为您正在查找的位置,将45000替换为您希望结果所在的距离。
该查询字符串与运行时无关,因此可以以相同的方式用于Python和Java运行时。
如果您使用了不同的方法、产品或解决方案,请随时在此处发布。
https://stackoverflow.com/questions/33973255
复制相似问题