ในการดึงค่าจากอาร์เรย์ของ ObjectIDs ให้ใช้ $pull ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสาร -
<ก่อนหน้า>> db.demo258.insertOne({"arrayOfObjectsId":[ ObjectId("5e47a5e81627c0c63e7dba92"), ObjectId("5e47a5e51627c0c63e7dba91")]}); { "รับทราบ" :จริง "a 8227:insertedIdIdec0 }แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo258.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" :ObjectId("5e47a8211627c0c63e7dba97"), "arrayOfObjectsId" :[ ObjectId("5e47a5e81627c0c63e7dba92"), ObjectId("5e47a5e51627c0c63]e7}dba91preต่อไปนี้เป็นแบบสอบถามเพื่อดึงค่าจากอาร์เรย์ของ ObjectIDs -
<ก่อน>> db.demo258.update( { }, { $pull:{ arrayOfObjectsId:{ $in:[ ObjectId("5e47a5e81627c0c63e7dba92") ] } } } );WriteResult({ "nMatched" :1, "nUpserted" :0, "nModified" :1 })
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo258.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" :ObjectId("5e47a8211627c0c63e7dba97"), "arrayOfObjectsId" :[ ObjectId("5e47a5e51627c0c63e7dba91") ] }