gpt4 book ai didi

mongodb geoNear + 附加过滤器?

转载 作者:可可西里 更新时间:2023-11-01 09:19:37 24 4
gpt4 key购买 nike

在mongodb中使用geoNear时是否可以添加更多的过滤器?例如,假设我的记录如下所示:

{
_id: {},
cid: 1,
latlon: [ -74.07096147537231, 40.9088747684256 ]
}

我可以传递“cid”以确保只有“cid”等于“1”的记录吗?如果 geoNear 不可能,我该怎么做?我正在使用 geoNear,因为它返回距离...

谢谢!

最佳答案

是的,当然有可能。您可以像往常一样对 $near 使用任何过滤:

db.places.find( { latlon: { $near : [50,50] } }, {cid: 1} )

更新:

如果你需要距离使用db.runCommand,如果不需要距离——照常使用db.collection.find

来自 documentation :

The geoNear command has the added benefit of returning the distance of each item from the specified point in the results, as well as some diagnostics for troubleshooting.

db.runCommand中有query参数,可以这样使用:

db.runCommand( { geoNear : "latlon" , near : [ 50 , 50 ], num : 10,
query : { cid: 1 } } );

关于mongodb geoNear + 附加过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5544291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com