仅更新集合中的单个文档。使用updateOne()。首先让我们创建一个包含文档的集合-
> db.updateOneDemo.insertOne({"StudentId":1,"StudentFirstName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06ed3725ddae1f53b621e8") } > db.updateOneDemo.insertOne({"StudentId":2,"StudentFirstName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06ed3825ddae1f53b621e9") } > db.updateOneDemo.insertOne({"StudentId":1,"StudentFirstName":"Mike"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06ed3825ddae1f53b621ea") }
以下是在find()方法的帮助下显示集合中所有文档的查询-
> db.updateOneDemo.find();
这将产生以下输出-
{ "_id" : ObjectId("5e06ed3725ddae1f53b621e8"), "StudentId" : 1, "StudentFirstName" : "Chris" } { "_id" : ObjectId("5e06ed3825ddae1f53b621e9"), "StudentId" : 2, "StudentFirstName" : "David" } { "_id" : ObjectId("5e06ed3825ddae1f53b621ea"), "StudentId" : 1, "StudentFirstName" : "Mike" }
以下是在MongoDB中更新单个文档的查询-
> db.updateOneDemo.updateOne({},{$set:{"StudentFirstName": "Robert"}}); { "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }
由于文档现在已更新,因此再次使用find()方法显示集合中的所有文档-
> db.updateOneDemo.find();
这将产生以下输出-
{ "_id" : ObjectId("5e06ed3725ddae1f53b621e8"), "StudentId" : 1, "StudentFirstName" : "Robert" } { "_id" : ObjectId("5e06ed3825ddae1f53b621e9"), "StudentId" : 2, "StudentFirstName" : "David" } { "_id" : ObjectId("5e06ed3825ddae1f53b621ea"), "StudentId" : 1, "StudentFirstName" : "Mike" }