【问题标题】:Can not get Mongo 2d spatial query to return over 100 results无法让 Mongo 2d 空间查询返回超过 100 个结果
【发布时间】:2014-04-10 15:00:17
【问题描述】:

默认情况下,二维索引上的 Mongo count() 查询最多返回 100 个结果。我想 count() 整个结果集。根据计数文档,我可以使用 limit() 绕过这个约束,但这对我不起作用。 MongoDB count.

我尝试将限制设置为 0(无限制)或 1000,但我总是返回 100:

db.things.find({loc: { '$near': [ -122.43, 37.79 ],'$maxDistance': 0.12}}).limit(10000).count()
db.things.find({loc: { '$near': [ -122.43, 37.79 ],'$maxDistance': 0.12}}).limit(0).count()

我可以做一个 find() 并设置一个上限并自己计算结果集,但这似乎是一种低效的方法并且需要更多的内存。我也是在任意设置另一个限制。

db.things.find({loc: { '$near': [ -122.43, 37.79 ],'$maxDistance': 0.12}}).limit(10000)

// In JS
thingsResult.length > 100

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    在我也遇到类似问题之前,经过搜索我才知道这是一个已经锁定在JIRA中的错误。

    尝试使用下面的查询,它会返回所有文档

    cordinate = [ -122.43, 37.79 ];
    maxDistance = 0.12 ;
    
    db.location.find({"position" : {"$within" : 
                                          {"$center" : [cordinate , maxDistance ]}
                                    }
                      });
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多