mongodb - 如何在 MongoDB 中使用一个查询更新多个文档

标签 mongodb

我有很多这样的文件:

{_id: 1, data: {a: 989, b: 732}},
{_id: 2, data: {a: 943, b: 778}},
{_id: 3, data: {a: 932, b: 768}},

我想更新任何文档,但只需要一个查询。例如,我想为 _id: 1 设置 {a: 1, b: 1},而不是 {a: 2, b: 2} code> 为 _id: 2 等等。

最佳答案

我用 bulkWrite 完成了它

collection(`someCollection`).bulkWrite([
  {
    updateOne: {
      filter: {_id: 1},
      update: {$set: {'data.a': 1000, 'data.b': 800}},
    }
  },
  {
    updateOne: {
      filter: {_id: 2},
      update: {$set: {'data.a': 1001, 'data.b': 801}},
    },
  },
  // ...
])

关于mongodb - 如何在 MongoDB 中使用一个查询更新多个文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52365448/

相关文章:

c# - 有没有人对 10Gen 支持的 c# 驱动程序有问题

mongodb - meteor JS : How to get latest set of data based on the date?

c# - 如何使用 Moq 模拟 IMongoCollection.Find

mysql - 如何基于Node.js为书店制作正确的BD

java - 从 mongo db 获取数据就像我们在 mysql 中一样?

java - $out 聚合 MongoDB

php - Composer 需要 mongodb/mongodb 失败

mongodb - 在 mongodb 副本集中添加辅助实例时出错

php - 在 PHP Phalcon 框架中使用 MongoDb

mongodb - 在恢复 mongodb 转储的单个命令中删除整个数据库