![](/img/trans.png)
[英]mongodb $geoIntersects or $geoWithin a point matches multiple polygons - sort by area?
[英]MongoDb: $geoIntersects for multiple input coordinates
我有每個我需要執行$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],[...]...]
}
}
}
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.