ใช้ $ ร่วมกับคำสั่ง update เพื่ออัปเดตระเบียนแท็ก มาสร้างคอลเล็กชันกันเถอะ
> db.demo713.insertOne(
{
tags:
[
{
id:101,
Name:"Tag-1"
},
{
id:102,
Name:"Tag-3"
},
{
id:103,
Name:"Tag-3"
}
]
}
);
{ "acknowledged" : true, "insertedId" : ObjectId("5ea8625a5d33e20ed1097b87") }
แสดงเอกสารทั้งหมดด้วยเมธอด find()
> db.demo713.find();
ผลลัพธ์ที่ได้
{ "_id" : ObjectId("5ea8625a5d33e20ed1097b87"), "tags" : [ { "id" : 101, "Name" : "Tag-1" }, { "id" : 102, "Name" : "Tag-3" }, { "id" : 103, "Name" : "Tag-3" } ] }
คำสั่งอัปเดตแท็ก (เปลี่ยน Tag-3 เป็น Tag-2 สำหรับ id 102)
> db.demo713.update({"tags.id":102},{$set:{"tags.$.Name":"Tag-2"}},false,true);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
แสดงเอกสารทั้งหมดหลังอัปเดต
> db.demo713.find().pretty();
ผลลัพธ์ที่ได้
{ "_id" : ObjectId("5ea8625a5d33e20ed1097b87"), "tags" : [ { "id" : 101, "Name" : "Tag-1" }, { "id" : 102, "Name" : "Tag-2" }, { "id" : 103, "Name" : "Tag-3" } ] }