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

ลบอิลิเมนต์ในอาร์เรย์ MongoDB


เพื่อลบอิลิเมนต์ ให้ใช้ update() และ $pull ใน MongoDB โอเปอเรเตอร์ $pull จะลบจากอาร์เรย์ที่มีอยู่แล้ว ทุกอินสแตนซ์ของค่าหรือค่าที่ตรงกับเงื่อนไขที่ระบุ

มาสร้างคอลเลกชันพร้อมเอกสารกันก่อน

db.demo541.insertOne({"software":{"services":["gmail","facebook","yahoo"]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e8ca845ef4dcbee04fbbc11") } > db.demo541.insertOne({"software":{"services":["whatsapp","twitter"]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e8ca85cef4dcbee04fbbc12") }

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

> db.demo541.find();

จะได้ผลลัพธ์ดังนี้

{ "_id" : ObjectId("5e8ca845ef4dcbee04fbbc11"), "software" : { "services" : [ "gmail", "facebook", "yahoo" ] } } { "_id" : ObjectId("5e8ca85cef4dcbee04fbbc12"), "software" : { "services" : [ "whatsapp", "twitter" ] } } 

คำสั่งสำหรับลบอิลิเมนต์ในอาร์เรย์ MongoDB

> db.demo541.update({ _id: ObjectId("5e8ca845ef4dcbee04fbbc11") }, ...    { $pull: { 'software.services': "yahoo" }} ... ); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

> db.demo541.find();

จะได้ผลลัพธ์ดังนี้

{ "_id" : ObjectId("5e8ca845ef4dcbee04fbbc11"), "software" : { "services" : [ "gmail", "facebook" ] } } { "_id" : ObjectId("5e8ca85cef4dcbee04fbbc12"), "software" : { "services" : [ "whatsapp", "twitter" ] } }