Mongodb找到maxdistance附近

时间:2014-11-06 09:49:06

标签: mongodb geolocation mongodb-query

我在mongodb

中触发了以下查询
db.acollection.find({
    "field.location": {
        "$near": [19.0723058, 73.00067739999997]
    }, 
    $maxDistance : 100000
}).count()

并收到以下错误 -

uncaught exception: count failed: {
    "shards" : {

    },
    "cause" : {
        "errmsg" : "exception: unknown top level operator: $maxDistance",
        "code" : 2,
        "ok" : 0
    },
    "code" : 2,
    "ok" : 0,
    "errmsg" : "failed on : Shard ShardA"
}

1 个答案:

答案 0 :(得分:3)

你做错了。 $maxDistance参数是$near运算符的“子”:

db.acollection.find({
    "field.location": {
        "$near": [19.0723058, 73.00067739999997],
        "$maxDistance": 100000
    }
}).count()

必须在同一个表达中。

在制作新应用程序时,请查看GeoJSON。这是你将来应该存储的方式。