从mongodb中的$ geoNear聚合获取距离字段

时间:2016-08-13 09:01:20

标签: spring mongodb spring-data-mongodb

我的Spring项目中有以下聚合命令:

NearQuery query = NearQuery.near(longitude,latitude).maxDistance(distance).spherical(true);
agg = newAggregation(
                geoNear(query, "distance"),
                unwind("rate"),
                group("id")
                        .first("name").as("name")
                        .sum("$rate.general_rate").as("rate")
                        .count().as("num_rates")                                                                                        
        );

但是当我用我的类进行映射时,距离字段(来自geoNear)不存在。如何通过管道传递与其他组字段一起出现的距离?

1 个答案:

答案 0 :(得分:0)

我面对同样的事情:)

答案在你的问题中......

  

geoNear(查询,“距离”),

上面一行将在您尝试聚合结果的类中查找属性 distance (在Point的情况下键入Double)。

例如,输出 "distance" : 420.82602810248557meters