本文介绍了MongoDB:$GeoIntersects用于多个输入坐标的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个需要执行$geoIntersects查询的坐标列表。对于一个坐标,查询如下所示:db.polygons.find({
geometry: {
$geoIntersects: {
$geometry: {
type: "Point", coordinates: [24.053640, 49.812427]
}
}
}
})
问题是有一个输入坐标列表,我需要为每个输入坐标找到一个多边形。到目前为止,我找到的唯一方法是在应用程序代码中迭代它们,并执行N次查询。
一个MongoDB查询就可以做到吗?如果没有,我们将不胜感激,希望您能对此进行优化。
推荐答案
一种可能的解决方案是将点几何类型替换为多点几何类型,并将输入坐标列表作为数组传递。
db.polygons.find({
geometry: {
$geoIntersects: {
$geometry: {
type: "MultiPoint", coordinates: [[24.053640, 49.812427],[...]...]
}
}
}
})
这篇关于MongoDB:$GeoIntersects用于多个输入坐标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!