仅更新单个 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 次浏览

开启您的职业生涯

完成课程获得认证

开始
广告