หากต้องการลบ ให้ใช้ $pull ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
> db.demo388.insertOne( ... { ... _id: '101', ... userDetails: { ... isMarried: false, ... userInfo: [ ... { ... Name:"Chris", ... Age:21 ... ... } ... ] ... } ... } ... ); { "acknowledged" : true, "insertedId" : "101" }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo388.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : "101", "userDetails" : { "isMarried" : false, "userInfo" : [ { "Name" : "Chris", "Age" : 21 } ] } }
ต่อไปนี้เป็นแบบสอบถามเพื่อลบองค์ประกอบจากอาร์เรย์เป็นคุณสมบัติย่อย -
> db.demo388.update( ... { "_id": "101" }, ... { "$pull": { "userDetails.userInfo": { "Name":"Chris" } } ... }) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo388.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : "101", "userDetails" : { "isMarried" : false, "userInfo" : [ ] } }