僅更新單個 MongoDB 文件而不刪除任何日期


要更新單個文件,您需要使用 updateOne() 更新特定資料。updateOne() 用於根據過濾器更新集合中的單個文件。

我們建立一個包含文件的集合 −

> db.demo495.insertOne({"FirstName":"Chris","Age":19});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e84adfeb0f3fa88e22790ca")
}
> db.demo495.insertOne({"FirstName":"David","Age":21});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e84ae05b0f3fa88e22790cb")
}
> db.demo495.insertOne({"FirstName":"Bob","Age":26});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e84ae0eb0f3fa88e22790cc")
}
> db.demo495.insertOne({"FirstName":"John","Age":22});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e84ae15b0f3fa88e22790cd")
}

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

> db.demo495.find();

這會生成以下輸出 −

{ "_id" : ObjectId("5e84adfeb0f3fa88e22790ca"), "FirstName" : "Chris", "Age" : 19 }
{ "_id" : ObjectId("5e84ae05b0f3fa88e22790cb"), "FirstName" : "David", "Age" : 21 }
{ "_id" : ObjectId("5e84ae0eb0f3fa88e22790cc"), "FirstName" : "Bob", "Age" : 26 }
{ "_id" : ObjectId("5e84ae15b0f3fa88e22790cd"), "FirstName" : "John", "Age" : 22 }

以下是使用 updateOne() 來僅更新單個文件的查詢 −

> db.demo495.updateOne({"FirstName":"David"},{$set: {"Age":23} });
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

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

> db.demo495.find();

這會生成以下輸出 −

{ "_id" : ObjectId("5e84adfeb0f3fa88e22790ca"), "FirstName" : "Chris", "Age" : 19 }
{ "_id" : ObjectId("5e84ae05b0f3fa88e22790cb"), "FirstName" : "David", "Age" : 23 }
{ "_id" : ObjectId("5e84ae0eb0f3fa88e22790cc"), "FirstName" : "Bob", "Age" : 26 }
{ "_id" : ObjectId("5e84ae15b0f3fa88e22790cd"), "FirstName" : "John", "Age" : 22 }

更新日期: 2020-5-13

184 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始
廣告