用特定字串更新 MongoDB 中某個欄位的所有值?


若要更新所有值,使用 update() 並加上 multi:true。讓我們建立一個包含文件的集合 -

> db.demo720.insertOne({"SubjectName":"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7ca43417811278f5883")
}
> db.demo720.insertOne({"SubjectName":"Java"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7ce43417811278f5884")
}
> db.demo720.insertOne({"SubjectName":"C"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7d143417811278f5885")
}
> db.demo720.insertOne({"SubjectName":"C++"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eaae7d543417811278f5886")
}

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

> db.demo720.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5eaae7ca43417811278f5883"), "SubjectName" : "MySQL" }
{ "_id" : ObjectId("5eaae7ce43417811278f5884"), "SubjectName" : "Java" }
{ "_id" : ObjectId("5eaae7d143417811278f5885"), "SubjectName" : "C" }
{ "_id" : ObjectId("5eaae7d543417811278f5886"), "SubjectName" : "C++" }

以下查詢將更新 “SubjectName” 欄位的所有值 -

> db.demo720.update({},{$set:{SubjectName:"MongoDB"}},{multi:true});
WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 })

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

> db.demo720.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5eaae7ca43417811278f5883"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7ce43417811278f5884"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7d143417811278f5885"), "SubjectName" : "MongoDB" }
{ "_id" : ObjectId("5eaae7d543417811278f5886"), "SubjectName" : "MongoDB" }

更新於: 15-5-2020

223 次瀏覽

啟動您的 職業生涯

完成課程可獲得認證

開始入門
廣告
© . All rights reserved.