javascript – 如何在mongodb中使用for循环

前端之家收集整理的这篇文章主要介绍了javascript – 如何在mongodb中使用for循环前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在 mongodb集合中插入一个新的字段(列),现在有5246个文档.该字段应该自动递增.所以我使用for循环.我的查询如下:
  1. for(i=1;i<=5246;i++) {
  2. db.coll.update({},{$set:{"new_field":i}},false,true)
  3. };

但是我的输出不好,

  1. {new_field:5246},{new_field:5246},.......

查询有什么问题吗?

解决方法

为什么要更新所有记录,没有找到标准?从技术上讲,这个循环是正常工作的.您需要做的是循环遍历您的集合的光标,如下所示:
  1. var cursor = db.coll.find(),i = 0;
  2.  
  3. cursor.forEach(function(x){
  4. db.coll.update({_id: x._id},{$set:{new_field:i}})
  5. $i++;
  6. });

像这样的事情会改变.

猜你在找的JavaScript相关文章