Node.js / MongoDB限制返回更多logging
我已经搜查,但我找不到任何答案。 虽然不规范不是问题,但我更加好奇它为什么会发生。
当我对一个具有100或200以上任何数字的限制的100klogging的集合进行相当简单的查找时,下面的代码片段中的console.log总是报告更多的logging返回。
var collection = db.collection('mycoll'); collection.find({}).sort({created_date: -1}).limit(500).toArray(function (err, docs) { if (err) { throw err; } db.close(); console.log(docs.length); });
有500的限制返回590或591,有什么想法?
编辑:这个问题似乎与这段代码有关 – https://github.com/mongodb/node-mongodb-native/blob/2.0/lib/cursor.js#L596
skip()和limit选项作为find()
方法的第二个参数。 (未testing)
你可以试试以下内容:
collection.find({}, {sort: {created_date: -1}, limit: 500});
编辑
你可以用asc命令中的created_date先试试这个(限制)吗? 这个工作适用于mongo节点驱动1.4
var options = { "limit": 20, "sort":"created_date" }; collection.find({},options).toArray();
- 从数组中获得所有匹配属性的结果
- 在node / mongodb / express中创buildlogin系统。 无法连接到数据库
- 如果多更新在MongoDB中部分失败,如何回滚?
- 节点mongodb:错误:连接由于parseError而closures
- 无法从shell / robomongo连接mongodb。 但通过nodejs代码连接
- 如何编写mongoose查询来过滤子文档
- mongoose模式被分解成几个文件,如何要求?
- 使用node.js检索用于mongo查询的副本实例
- 500错误:对于使用ResourceJS的Mongoose模型,对于path\“_ id \”中的值转换为ObjectId失败