หากต้องการอัปเดตอาร์เรย์ด้วยฟิลด์อื่น ให้ใช้ $push ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo283.insertOne({"Name":"Chris","Status":["Active","Inactive"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e4ab97ddd099650a5401a75") }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo283.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e4ab97ddd099650a5401a75"), "Name" : "Chris", "Status" : [ "Active", "Inactive" ] }
ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตอาร์เรย์ด้วยฟิลด์อื่น -
> db.demo283.update({}, {$push: {Status:{$each:['Regular', 'NotRegular'], '$slice': -4}}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo283.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e4ab97ddd099650a5401a75"), "Name" : "Chris", "Status" : [ "Active", "Inactive", "Regular", "NotRegular" ]