สร้างคอลเลกชันตัวอย่าง
> db.demo124.insertOne(
{
"Name": "John",
"Id": 101,
"ProjectDetails": [
{ "ProjectName1": "Online Book", "ProjectName2": "Online Banking" },
{ "ProjectName1": "Online Library Management System", "ProjectName2": "School Management System" }
]
}
);
{ "acknowledged": true, "insertedId": ObjectId("5e2f2c8b140daf4c2a3544bb") }
แสดงข้อมูลก่อนเพิ่ม
> db.demo124.find();
{ "_id": ObjectId("5e2f2c8b140daf4c2a3544bb"), "Name": "John", "Id": 101, "ProjectDetails": [ { "ProjectName1": "Online Book", "ProjectName2": "Online Banking" }, { "ProjectName1": "Online Library Management System", "ProjectName2": "School Management System" } ] }
คิวรีเพิ่ม ProjectName3 ทุกสมาชิกในอาร์เรย์
ใช้ forEach วนลูปเพิ่มฟิลด์ แล้ว update ทับเอกสารเดิม:
> db.demo124.find().toArray().forEach(
function(d){
for(var i = 0; i < d.ProjectDetails.length; ++i) {
d.ProjectDetails[i]['ProjectName3'] = 'Online Snake Game';
}
db.demo124.update({_id: d._id}, d);
}
);
ผลลัพธ์: ทุกสมาชิกมี ProjectName3
> db.demo124.find().pretty();
{ "_id": ObjectId("5e2f2c8b140daf4c2a3544bb"), "Name": "John", "Id": 101, "ProjectDetails": [ { "ProjectName1": "Online Book", "ProjectName2": "Online Banking", "ProjectName3": "Online Snake Game" }, { "ProjectName1": "Online Library Management System", "ProjectName2": "School Management System", "ProjectName3": "Online Snake Game" } ] }