![](/img/trans.png)
[英]$geoNear - $maxDistance in mongodb aggregation not working
[英]MongoDB $maxDistance is working but $minDistance will not
我正在嘗試從我的集合中查找數據,並根據帖子創建時的位置(loc :),以距geoJSON點最近至最遠的順序顯示。
我已經進入mongo控制台並跑了
db.my-collection.createIndex( { loc : "2dsphere" } )
為了確保它們被索引為2dsphere。
現在,每當我使用我的find命令以上述順序列出帖子時,只有$ maxDistance起作用,而$ minDistance對它們的排序完全沒有影響。 這是代碼:
return posts.find({
loc:
{ $near :
{
$geometry:{ type:"Point", coordinates:[ lng, lat]},
$maxDistance: maxDistance,
$minDistance: minDistance
}
},
});
}
我相信我已經按照mongoDB( http://docs.mongodb.org/manual/reference/operator/query/near/ )所述完成了所有工作,但看來我缺少了一些東西。
為了使$ minDistance和$ maxDistance都能正常工作,我必須在代碼中添加以下行:
Collection._ensureIndex({'loc':'2dsphere'});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.