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

แบบสอบถาม MongoDB เพื่อลบอาร์เรย์ทั้งหมดออกจากคอลเล็กชัน?


หากต้องการลบอาร์เรย์ทั้งหมดออกจากคอลเล็กชัน ให้ใช้ $unset ใน MongoDB ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo609.insertOne({"ListOfSubject":["MySQL","MongoDB"]});{
   "acknowledged" : true, "insertedId" : ObjectId("5e974695f57d0dc0b182d62c")
}
> db.demo609.insertOne({"ListOfSubject":["Java"]});{
   "acknowledged" : true, "insertedId" : ObjectId("5e97469af57d0dc0b182d62d")
}

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

> db.demo609.find();

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

{ "_id" : ObjectId("5e974695f57d0dc0b182d62c"), "ListOfSubject" : [ "MySQL", "MongoDB" ] }
{ "_id" : ObjectId("5e97469af57d0dc0b182d62d"), "ListOfSubject" : [ "Java" ] }

นี่คือแบบสอบถามเพื่อลบอาร์เรย์ทั้งหมดออกจากคอลเลกชัน -

> db.demo609.update({},{$unset:{"ListOfSubject":""}},{multi:true});
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

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

> db.demo609.find();

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

{ "_id" : ObjectId("5e974695f57d0dc0b182d62c") }
{ "_id" : ObjectId("5e97469af57d0dc0b182d62d") }