MongoDb:$ geoIntersects用于多个输入坐标

时间:2018-11-10 16:39:08

标签: mongodb geospatial

我需要执行$geoIntersects查询的每个坐标的列表。对于一个坐标,查询如下所示:

db.polygons.find({ 
    geometry: { 
        $geoIntersects: {
            $geometry: {
                type: "Point", coordinates: [24.053640, 49.812427]
            } 
        } 
    } 
})

问题是有一个输入坐标列表,对于每个输入坐标,我需要找到一个多边形。到目前为止,我发现的唯一方法是在应用程序代码中对其进行迭代并执行N次查询。

是否可以使用一个MongoDB查询来完成?如果没有,那么将对如何优化它的任何想法表示赞赏。

1 个答案:

答案 0 :(得分:1)

一种可行的解决方案是将Point几何类型替换为MultiPoint,然后将输入坐标列表作为数组传递。