僅更新 MongoDB 文件中的特定值


要僅更新一個特定值,請使用 update(),並在其中使用 $set 來設定新值。讓我們建立一個包含文件的集合 -

> db.demo201.insertOne({"ClientName":"Chris Brown","ClientAge":26});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3c39ca03d395bdc21346e5")
}
> db.demo201.insertOne({"ClientName":"David Miller","ClientAge":35});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3c39d403d395bdc21346e6")
}
> db.demo201.insertOne({"ClientName":"Carol Taylor","ClientAge":28});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3c39e603d395bdc21346e7")
}

在 find() 方法的幫助下顯示來自集合的所有文件 -

> db.demo201.find();

這將產生以下輸出 -

{ "_id" : ObjectId("5e3c39ca03d395bdc21346e5"), "ClientName" : "Chris Brown", "ClientAge" : 26 }
{ "_id" : ObjectId("5e3c39d403d395bdc21346e6"), "ClientName" : "David Miller", "ClientAge" : 35 }
{ "_id" : ObjectId("5e3c39e603d395bdc21346e7"), "ClientName" : "Carol Taylor", "ClientAge" : 28 }

以下是更新 MongoDB 的查詢 -

> db.demo201.update({"ClientAge":35},{$set:{"ClientName":"John Doe"}},{multi:true});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

在 find() 方法的幫助下顯示來自集合的所有文件 -

> db.demo201.find();

這將產生以下輸出 -

{ "_id" : ObjectId("5e3c39ca03d395bdc21346e5"), "ClientName" : "Chris Brown", "ClientAge" : 26 }
{ "_id" : ObjectId("5e3c39d403d395bdc21346e6"), "ClientName" : "John Doe", "ClientAge" : 35 }
{ "_id" : ObjectId("5e3c39e603d395bdc21346e7"), "ClientName" : "Carol Taylor", "ClientAge" : 28 }

更新時間: 2020-03-27

207 次瀏覽

開啟你的 職業 生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.