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

อัปเดต Elements ภายใน Array ใน MongoDB

การอัปเดต Element ภายใน Array ด้วย $set

เพื่ออัปเดต Element ภายใน Array ให้ใช้ $set ใน MongoDB

สร้าง Collection พร้อมข้อมูล

> db.demo494.insertOne(
... {
...     "CollegeDetails" : [
...         {
...             "CollegeName" : "MIT",
...             "Fees" : 80000
...         },
...         {
...             "CollegeName" : "SU",
...             "Fees" : 90000
...         }
...     ]
... }
... )
{ "acknowledged" : true, "insertedId" : ObjectId("5e84a5c1b0f3fa88e22790c9") }

แสดงเอกสารทั้งหมด

> db.demo494.find().pretty();

ผลลัพธ์:

{
    "_id" : ObjectId("5e84a5c1b0f3fa88e22790c9"),
    "CollegeDetails" : [
        { "CollegeName" : "MIT", "Fees" : 80000 },
        { "CollegeName" : "SU", "Fees" : 90000 }
    ]
}

คิวรีอัปเดต Fees ของ MIT เป็น 100000

> db.demo494.update(
...     {
...         "CollegeDetails.CollegeName": "MIT"
...     },
...     {
...         $set:
...         {
...             "CollegeDetails.$.Fees" : 100000
...         }
...     }
... );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

แสดงเอกสารหลังอัปเดต

> db.demo494.find().pretty();

ผลลัพธ์:

{
    "_id" : ObjectId("5e84a5c1b0f3fa88e22790c9"),
    "CollegeDetails" : [
        { "CollegeName" : "MIT", "Fees" : 100000 },
        { "CollegeName" : "SU", "Fees" : 90000 }
    ]
}