findOneAndDelete()根据过滤器和排序条件从集合中删除单个文档,并返回删除的文档。
deleteOne()从集合中删除单个文档。
让我们看一个示例并创建包含文档的集合-
> db.demo448.insertOne({"Name":"Chris","Age":21});{ "acknowledged" : true, "insertedId" : ObjectId("5e7a291cbbc41e36cc3caeca") } > db.demo448.insertOne({"Name":"David","Age":23});{ "acknowledged" : true, "insertedId" : ObjectId("5e7a2926bbc41e36cc3caecb") } > db.demo448.insertOne({"Name":"Bob","Age":22});{ "acknowledged" : true, "insertedId" : ObjectId("5e7a2930bbc41e36cc3caecc") }
在find()方法的帮助下显示集合中的所有文档-
> db.demo448.find();
这将产生以下输出-
{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 } { "_id" : ObjectId("5e7a2926bbc41e36cc3caecb"), "Name" : "David", "Age" : 23 } { "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }
以下是实现deleteOne()的查询-
> db.demo448.deleteOne({_id:ObjectId("5e7a2926bbc41e36cc3caecb")});
这将产生以下输出-
{ "acknowledged" : true, "deletedCount" : 1 }
在find()方法的帮助下显示集合中的所有文档-
> db.demo448.find();
这将产生以下输出-
{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 } { "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }
以下是实现findOneAndDelete()的查询-
> db.demo448.findOneAndDelete({"_id":ObjectId("5e7a2930bbc41e36cc3caecc")});
这将产生以下输出-
{ "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }
在find()方法的帮助下显示集合中的所有文档-
> db.demo448.find();
这将产生以下输出-
{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 }