2

为什么 $nearsphere 查询总是返回 100 个结果?

 db.mytable.find({"geo":{"$nearSphere":[41.393552,2.171344999999974],"$maxDistance":0.007}}).limit(500).count() -->>> 100 results

无论 $maxdistance 的值如何,我的表都有超过 30.000 条记录。

4

2 回答 2

2

检查这个:https ://jira.mongodb.org/browse/SERVER-739

于 2012-10-10T10:37:48.783 回答
0

我认为异步代码正在命中 db.close(); 在 .each 循环完成之前,由于某种原因,每个人都只能得到 100 个结果,所以这里有一个解决方法。

var url = 'mongodb://localhost:27017/mydb';


  MongoClient.connect(url, function(err, db) {

       var i=0;

       var collection = db.collection('documents');

       collection.find().each(function(err, docs) {

         if (docs != null){

            console.log(docs);
            console.log(i);

            i++;

            if( i >= docs.length ){
              db.close();
            }

          }


  });


});
于 2017-02-16T11:09:55.213 回答