繁体   English   中英

使用pymongo更新所有文件并从mongodb返回所有匹配的文档

[英]Update ALL and return ALL matching documents from mongodb using pymongo

我想使用pymongo从MongoDB获取所有更新的文档。

我尝试使用findOneAndUpdate(),但它仅更新一个文档。 也尝试过使用MongoDB js服务器功能,但是它太慢了,通常不建议这样做。

    db.system.js.save({
      _id: "distributedTaskQueue",
      value : function(coll,status,limit,fromStatus,toStatus) {
        records = db.getCollection(coll).find({status:fromStatus}).limit(limit)

         results.forEach (function(record){
                record[status]= toStatus
                db.getCollection(coll).save(record);
         })
         return records;
      }
    })

这个想法是在使用pymongo来获取文档进行处理的100台服务器上运行它。

您正在寻找update_many - http: update_many

status查找并使用$set使用toStatus更新。

手动遍历文档将很慢且效率低下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM