ในการพุชเอกสารลงในอาร์เรย์ ให้ใช้ $push พร้อมกับ update() ให้เราสร้างคอลเลกชันที่มีเอกสาร -
>db.demo310.insertOne({"Name":"Chris","details":[{"Id":101,"Subject":"MySQL"},{"Id":102,"Subject":"MongoDB"}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e50cabdf8647eb59e562043")
} แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo310.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{
"_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
{ "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" }
]
} ต่อไปนี้เป็นแบบสอบถามเพื่อผลักดันเอกสาร -
> db.demo310.update({ _id:ObjectId("5e50cabdf8647eb59e562043")},
...{ $push: {"details": {
... "Id" : 103,
... "Subject": "Java"
... }}
...}
...)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo310.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{
"_id" : ObjectId("5e50cabdf8647eb59e562043"), "Name" : "Chris", "details" : [
{ "Id" : 101, "Subject" : "MySQL" }, { "Id" : 102, "Subject" : "MongoDB" },
{ "Id" : 103, "Subject" : "Java" }
]
}