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

การอัปเดต Quantity ใน MongoDB ตามสองเงื่อนไข


สำหรับกรณีนี้ ให้ใช้เมธอด UPDATE() และภายในนั้นตั้งค่าสองเงื่อนไข มาสร้างคอลเล็กชันกันเถอะ

> db.demo605.insertOne(
    {
        _id:1,
        "Information" : [
            {
                "id" : "Product-1",
                "Quantity" : 50
            },
            {
                "id" : "Product-2",
                "Quantity" : 100
            }
        ]
    }
);
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo605.insertOne(
    {
        _id:2,
        "Information" : [
            {
                "id" : "Product-1",
                "Quantity" : 30
            },
            {
                "id" : "Product-2",
                "Quantity" : 40
            }
        ]
    }
);
{ "acknowledged" : true, "insertedId" : 2 }

แสดงเอกสารทั้งหมดด้วยเมธอด find()

> db.demo605.find();

ผลลัพธ์ที่ได้

{ "_id" : 1, "Information" : [ { "id" : "Product-1", "Quantity" : 50 }, { "id" : "Product-2", "Quantity" : 100 } ] }
{ "_id" : 2, "Information" : [ { "id" : "Product-1", "Quantity" : 30 }, { "id" : "Product-2", "Quantity" : 40 } ] }

คำสั่งอัปเดต Quantity ใน MongoDB ตามสองเงื่อนไข (_id=1 และ Information.id=Product-1)

>db.demo605.update({_id:1,"Information.id":"Product-1"}, {$set:{"Information.$.Quantity":1000}} );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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

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

ผลลัพธ์ที่ได้

{ "_id" : 1, "Information" : [ { "id" : "Product-1", "Quantity" : 1000 }, { "id" : "Product-2", "Quantity" : 100 } ] }
{ "_id" : 2, "Information" : [ { "id" : "Product-1", "Quantity" : 30 }, { "id" : "Product-2", "Quantity" : 40 } ] }