【问题标题】:mongoose cursor batchSize猫鼬游标batchSize
【发布时间】:2017-02-09 01:24:58
【问题描述】:

如果定义了batchSize,如何迭代游标批处理文档? 例如,当 batchSize 定义为等于 50 时,有没有办法迭代这 50 个子文档?

var myCursor = collection.find().cursor({batchSize:50});
mycursor('on',function(doc){

})

【问题讨论】:

  • 你找到答案了吗,我希望 doc 在这个例子中是一个包含 50 个文档的数组。

标签: node.js mongodb mongoose


【解决方案1】:

试试这个:

var myCursor = collection.find({}).cursor({batchSize:50});
myCursor.eachAsync((doc) => {
   ...
});

批量大小仅用于性能优化,不会为您提供 50 个对象块。

您仍然需要单独处理每个文档。

【讨论】:

  • 我试图在 mongoose 上运行它,不幸的是 mongoose 没有 hasNext 像 mongoDB
  • 谢谢,但是 eachAsync 遍历所有回答查询的文档,我想要一种方法来使用我定义的每 50 个批处理文档。
猜你喜欢
  • 2018-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-16
  • 2015-04-29
  • 2017-10-08
  • 2020-04-24
  • 2012-02-09
相关资源
最近更新 更多