หากต้องการลบ ให้ใช้ $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" : [ ] } }