Computer >> Máy Tính >  >> Lập trình >> MongoDB

Sự khác biệt giữa thao tác deleteOne () và findOneAndDelete () trong MongoDB là gì?


findOneAndDelete () xóa các tài liệu đơn lẻ khỏi bộ sưu tập trên cơ sở bộ lọc và tiêu chí sắp xếp cũng như trả về tài liệu đã xóa.

DeleteOne () xóa một tài liệu khỏi bộ sưu tập.

Hãy để chúng tôi xem một ví dụ và tạo một bộ sưu tập với các tài liệu -

> 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")
}

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo448.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 }
{ "_id" : ObjectId("5e7a2926bbc41e36cc3caecb"), "Name" : "David", "Age" : 23 }
{ "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }

Sau đây là truy vấn để triển khai deleteOne () -

> db.demo448.deleteOne({_id:ObjectId("5e7a2926bbc41e36cc3caecb")});

Điều này sẽ tạo ra kết quả sau -

{ "acknowledged" : true, "deletedCount" : 1 }

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo448.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 }
{ "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }

Sau đây là truy vấn để triển khai findOneAndDelete () -

> db.demo448.findOneAndDelete({"_id":ObjectId("5e7a2930bbc41e36cc3caecc")});

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e7a2930bbc41e36cc3caecc"), "Name" : "Bob", "Age" : 22 }

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo448.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), "Name" : "Chris", "Age" : 21 }