使用findOneAndUpdate()在MongoDB中更新?
将findOneAndUpdate()用于更新基于过滤和排序条件,即一个单一的文件-
db.collection.findOneAndUpdate(filter, update, options)
让我们创建一个包含文档的集合-
> db.demo328.insertOne({Name:"Chris",Marks:67});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e516b19f8647eb59e56207a")
}
> db.demo328.insertOne({Name:"David",Marks:78});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e516b24f8647eb59e56207b")
}
> db.demo328.insertOne({Name:"Bob",Marks:97});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e516b2bf8647eb59e56207c")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo328.find();
这将产生以下输出-
{ "_id" : ObjectId("5e516b19f8647eb59e56207a"), "Name" : "Chris", "Marks" : 67 }
{ "_id" : ObjectId("5e516b24f8647eb59e56207b"), "Name" : "David", "Marks" : 78 }
{ "_id" : ObjectId("5e516b2bf8647eb59e56207c"), "Name" : "Bob", "Marks" : 97 }以下是要使用更新的查询findOneAndUpdate()。在这里,我们增加特定文档的字段Marks-
> db.demo328.findOneAndUpdate({Name:"David"},{ $inc: { "Marks" : 10} });
{
"_id" : ObjectId("5e516b24f8647eb59e56207b"),
"Name" : "David",
"Marks" : 78
}在find()方法的帮助下显示集合中的所有文档-
> db.demo328.find();
这将产生以下输出-
{ "_id" : ObjectId("5e516b19f8647eb59e56207a"), "Name" : "Chris", "Marks" : 67 }
{ "_id" : ObjectId("5e516b24f8647eb59e56207b"), "Name" : "David", "Marks" : 88 }
{ "_id" : ObjectId("5e516b2bf8647eb59e56207c"), "Name" : "Bob", "Marks" : 97 }热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西