MongoDB - 更新部分文件數量?


要更新部分文件,將 multiple 設定為 true。讓我們建立一個包含文件的集合 -

> db.demo312.insertOne({"FirstName":"Robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ce16f8647eb59e56204a")
}
> db.demo312.insertOne({"FirstName":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ce19f8647eb59e56204b")
}
> db.demo312.insertOne({"FirstName":"Robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ce1cf8647eb59e56204c")
}
> db.demo312.insertOne({"FirstName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ce20f8647eb59e56204d")
}
> db.demo312.insertOne({"FirstName":"Robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ce22f8647eb59e56204e")
}

在集合中顯示所有文件(利用 find() 方法)-

> db.demo312.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5e50ce16f8647eb59e56204a"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5e50ce19f8647eb59e56204b"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e50ce1cf8647eb59e56204c"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5e50ce20f8647eb59e56204d"), "FirstName" : "David" }
{ "_id" : ObjectId("5e50ce22f8647eb59e56204e"), "FirstName" : "Robert" }

以下是更新部分文件的查詢

> db.demo312.update({"FirstName":"Robert"},{$set:{"FirstName":"Sam"}},{multi:true});
WriteResult({ "nMatched" : 3, "nUpserted" : 0, "nModified" : 3 })

在集合中顯示所有文件(利用 find() 方法)-

> db.demo312.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5e50ce16f8647eb59e56204a"), "FirstName" : "Sam" }
{ "_id" : ObjectId("5e50ce19f8647eb59e56204b"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e50ce1cf8647eb59e56204c"), "FirstName" : "Sam" }
{ "_id" : ObjectId("5e50ce20f8647eb59e56204d"), "FirstName" : "David" }
{ "_id" : ObjectId("5e50ce22f8647eb59e56204e"), "FirstName" : "Sam" }

更新於: 2020 年 4 月 1 日

141 次檢視

開啟你的事業

獲得認證,完成課程

開始學習
廣告
© . All rights reserved.