deleteOne() ใช้สำหรับลบเอกสารสูงสุด 1 เอกสารที่ตรงกับเงื่อนไขที่ระบุ จากคอลเลกชัน
ตัวอย่างข้อมูลทดสอบ
> db.demo363.insertOne({"Name":"Chris"});
> db.demo363.insertOne({"Name":"David"});
> db.demo363.insertOne({"Name":"Bob"});
> db.demo363.insertOne({"Name":"Chris"});
แสดงข้อมูลก่อนลบ
> db.demo363.find();
{
"_id" : ObjectId("5e57d2c3d0ada61456dc9369"),
"Name" : "Chris"
}
{
"_id" : ObjectId("5e57d2c7d0ada61456dc936a"),
"Name" : "David"
}
{
"_id" : ObjectId("5e57d2cad0ada61456dc936b"),
"Name" : "Bob"
}
{
"_id" : ObjectId("5e57d2d1d0ada61456dc936c"),
"Name" : "Chris"
}
คำสั่งลบเอกสารแรกที่ Name = "Chris"
> db.demo363.deleteOne({Name:"Chris"});
{ "acknowledged" : true, "deletedCount" : 1 }
ผลลัพธ์หลังลบ
> db.demo363.find();
{
"_id" : ObjectId("5e57d2c7d0ada61456dc936a"),
"Name" : "David"
}
{
"_id" : ObjectId("5e57d2cad0ada61456dc936b"),
"Name" : "Bob"
}
{
"_id" : ObjectId("5e57d2d1d0ada61456dc936c"),
"Name" : "Chris"
}
สรุป: มี "Chris" 2 รายการ แต่ deleteOne() ลบเพียงรายการแรกที่พบ (ตามลำดับ _id) เหลือ "Chris" อีก 1 รายการ