在执行以下聚合时
db.Activities.aggregate([
{
$geoNear: {
near: { coordinates: [ -73.99279 , 40.719296 ] },
distanceField: "location.calculated",
spherical: true,
}
}
])
我收到以下错误
uncaught exception: aggregate failed: {
"errmsg" : "exception: geoNear command failed: { ok: 0.0, errmsg: \"can't get query executor\" }",
"code" : 16604,
"ok" : 0
}
当我运行geoNear命令时,它工作正常。
db.runCommand( {
geoNear: "Activities" ,
near: [ -73.99279 , 40.719296 ],
spherical: true,
})
有什么想法我在做什么吗?
最佳答案
问题可能是:
Activities
中缺少“2dsphere”索引。 Activities
中有多个地理索引在Mongo Shell中运行此代码以查看所有索引
db.Activities.getIndexes()
关于mongodb:执行geoNear聚合时无法获取查询执行程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30240883/