在集合的所有文档中添加字段 - MongoDB

Add fields in all documents of a collection - MongoDB

我对在 MongoDB 集合中的所有文档中添加新字段的语法有困难。我哪里出错了?

例如,我想向名为 'cats':

的集合中的所有文档添加一个空数组
db.cats.updateMany({}, {$set: {images: []}});

returns AWS Cloud9 命令行中的以下内容并且不会在 MongoDB Atlas 文档中更新:

MongoDB Enterprise **db**-shard-0:PRIMARY> db.cats.updateMany({}, {$set: {images: []}});
{ "acknowledged" : true, "matchedCount" : 0, "modifiedCount" : 0 }

我正在使用 MongoDB shell 版本 v3.6.3(但是我的服务器版本是 4.2.8)

您必须使用空选择器,并将 multi 标志设置为 true(最后一个参数)以更新所有文档

db.getCollection('cats').update(
  {},
  { $set: {"images": []} },
  false,
  true
)