Yur*_*kov 3 geospatial mongodb
我有一个坐标列表,其中每个坐标都需要执行$geoIntersects查询。对于一个坐标,查询如下所示:
db.polygons.find({
geometry: {
$geoIntersects: {
$geometry: {
type: "Point", coordinates: [24.053640, 49.812427]
}
}
}
})
Run Code Online (Sandbox Code Playgroud)
问题是有一个输入坐标列表,对于每个坐标我需要找到一个多边形。到目前为止,我发现的唯一方法是在应用程序代码中迭代它们并执行查询 N 次。
是否可以通过一个 MongoDB 查询来完成此操作?如果没有,任何关于如何优化的想法都值得赞赏。
一种可能的解决方案是将 Point 几何类型替换为 MultiPoint 几何类型,并将输入坐标列表作为数组传递。
db.polygons.find({
geometry: {
$geoIntersects: {
$geometry: {
type: "MultiPoint", coordinates: [[24.053640, 49.812427],[...]...]
}
}
}
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
779 次 |
| 最近记录: |