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