我在为MongoDB集合中的所有文档中添加新字段的语法上遇到困难。有什么想法我要去哪里吗?
例如,我想向一个名为“ cats”的集合中的所有文档添加一个空数组:
db.cats.updateMany({}, {$set: {images: []}});
它将在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)
答案 0 :(得分:0)
您必须使用空选择器,并将multi标志设置为true(最后一个参数)以更新所有文档
db.getCollection('cats').update(
{},
{ $set: {"images": []} },
false,
true
)