[英]mongo near set maxDistance as value in collection
我很抱歉標題。 我很難描述。 我有這個收藏
{
"_id" : ObjectId("55cb9c666c522cafdb053a68"),
location: {
type: "Point",
coordinates: [-73.856077, 40.848447]
},
"maxDistancevalue" : 100000
}
現在我想找到當前位置的范圍:100000 定義為“maxDistancevalue”的集合
代碼將是這樣的。 但是如何設置 maxDistance 值呢?
db.places.find(
{
location:
{ $near :
{
$geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] },
$minDistance: **??????, -->maxDistancevalue**
$maxDistance: 0
}
}
}
)
您可以使用聚合框架的$geoNear管道階段來引用其他現有字段。 它需要在你的集合上創建 2dsphere 索引,所以從:
db.places.createIndex({location:"2dsphere"});
然后你可以運行你的aggregate()
查詢:
db.places.aggregate([
{
$geoNear: {
near: { type: "Point", coordinates: [ -73.9667, 40.78 ] },
distanceField: "dist.calculated",
maxDistance: "$maxDistancevalue"
}
}
])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.