Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

จะลบองค์ประกอบออกจากอาร์เรย์ใน MongoDB ได้อย่างไร?


หากต้องการลบองค์ประกอบออกจากอาร์เรย์ ให้ใช้ $pull ให้เราสร้างคอลเลกชันที่มีเอกสาร -

<ก่อนหน้า>> db.demo279.insertOne({id:[101,103,105,110]});{ "acknowledged" :true, "insertedId" :ObjectId("5e490af7dd099650a5401a58")}> db.demo279.insertOne({id:[107,111,110] });{ "รับทราบ" :จริง "insertedId" :ObjectId("5e490b06dd099650a5401a59")}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo279.find();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" :ObjectId("5e490af7dd099650a5401a58"), "id" :[ 101, 103, 105, 110 ] }{ "_id" :ObjectId("5e490b06dd099650a5401a59"), "id" :[ 107, 111, 110 ] } }

ต่อไปนี้เป็นแบบสอบถามเพื่อลบองค์ประกอบจากอาร์เรย์ &minus';

> db.demo279.update({},{$pull:{id:110}},{multi:true});WriteResult({ "nMatched" :2, "nUpserted" :0, "nModified" :2 })

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo279.find();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" :ObjectId("5e490af7dd099650a5401a58"), "id" :[ 101, 103, 105 ] }{ "_id" :ObjectId("5e490b06dd099650a5401a59"), "id" :[ 107, 111 ] }