使用 MongoDB 中的多引數更新多文件中的值?


你需要將 multi 設為 true。加入選項 multi − true 來更新所有匹配查詢條件的文件。

讓我們首先使用文件建立一個集合 −

> db.demo390.insertOne({"FirstName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5d1f3a22064be7ab44e7fa")
}
> db.demo390.insertOne({"FirstName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5d1f3e22064be7ab44e7fb")
}
> db.demo390.insertOne({"FirstName":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5d1f4122064be7ab44e7fc")
}
> db.demo390.insertOne({"FirstName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5d1f4422064be7ab44e7fd")
}

使用 find() 方法顯示集合中的所有文件 −

> db.demo390.find();

這將產生以下輸出 −

{ "_id" : ObjectId("5e5d1f3a22064be7ab44e7fa"), "FirstName" : "Chris" }
{ "_id" : ObjectId("5e5d1f3e22064be7ab44e7fb"), "FirstName" : "David" }
{ "_id" : ObjectId("5e5d1f4122064be7ab44e7fc"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e5d1f4422064be7ab44e7fd"), "FirstName" : "Chris" }

以下是更新 multi − true 值的查詢 −

> db.demo390.update({FirstName:"Chris"},{$set:{"FirstName":"John"}},{multi:true});
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

使用 find() 方法顯示集合中的所有文件 −

> db.demo390.find();

這將產生以下輸出 −

{ "_id" : ObjectId("5e5d1f3a22064be7ab44e7fa"), "FirstName" : "John" }
{ "_id" : ObjectId("5e5d1f3e22064be7ab44e7fb"), "FirstName" : "David" }
{ "_id" : ObjectId("5e5d1f4122064be7ab44e7fc"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e5d1f4422064be7ab44e7fd"), "FirstName" : "John" }

更新於:02-Apr-2020

390 次瀏覽

啟動你的 職業

完成課程認證

開始
廣告
© . All rights reserved.