इनिशियलाइज़UnorderedBulkOp() की अवधारणा का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -
>db.upDateMultipleRowsDemo.insertOne({"CustomerName":"John","CustomerPurchaseAmount":500});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd6ceb06d78f205348bc626")
}
>db.upDateMultipleRowsDemo.insertOne({"CustomerName":"Chris","CustomerPurchaseAmount":700});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd6ceb26d78f205348bc627")
}
>db.upDateMultipleRowsDemo.insertOne({"CustomerName":"David","CustomerPurchaseAmount":50});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd6ceb36d78f205348bc628")
}
>db.upDateMultipleRowsDemo.insertOne({"CustomerName":"Larry","CustomerPurchaseAmount":1900});
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd6ceb46d78f205348bc629")
} खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -
> db.upDateMultipleRowsDemo.find().pretty();
यह निम्नलिखित आउटपुट देगा -
{
"_id" : ObjectId("5cd6ceb06d78f205348bc626"),
"CustomerName" : "John",
"CustomerPurchaseAmount" : 500
}
{
"_id" : ObjectId("5cd6ceb26d78f205348bc627"),
"CustomerName" : "Chris",
"CustomerPurchaseAmount" : 700
}
{
"_id" : ObjectId("5cd6ceb36d78f205348bc628"),
"CustomerName" : "David",
"CustomerPurchaseAmount" : 50
}
{
"_id" : ObjectId("5cd6ceb46d78f205348bc629"),
"CustomerName" : "Larry",
"CustomerPurchaseAmount" : 1900
} एक ही क्वेरी में कई पंक्तियों को अपडेट करने की क्वेरी निम्नलिखित है -
> var manyUpdateValue = db.upDateMultipleRowsDemo.initializeUnorderedBulkOp();
> manyUpdateValue.find({ _id: ObjectId("5cd6ceb06d78f205348bc626")}).updateOne({$set:{"CustomerName":"Bob" }});
> manyUpdateValue.find({ _id: ObjectId("5cd6ceb36d78f205348bc628")}).updateOne({$set:{"CustomerPurchaseAmount":56544444}});
> manyUpdateValue.execute();
BulkWriteResult({
"writeErrors" : [ ],
"writeConcernErrors" : [ ],
"nInserted" : 0,
"nUpserted" : 0,
"nMatched" : 2,
"nModified" : 2,
"nRemoved" : 0,
"upserted" : [ ]
}) आइए एक बार फिर से सभी दस्तावेजों की जांच करें -
> db.upDateMultipleRowsDemo.find().pretty();
यह निम्नलिखित आउटपुट देगा -
{
"_id" : ObjectId("5cd6ceb06d78f205348bc626"),
"CustomerName" : "Bob",
"CustomerPurchaseAmount" : 500
}
{
"_id" : ObjectId("5cd6ceb26d78f205348bc627"),
"CustomerName" : "Chris",
"CustomerPurchaseAmount" : 700
}
{
"_id" : ObjectId("5cd6ceb36d78f205348bc628"),
"CustomerName" : "David",
"CustomerPurchaseAmount" : 56544444
}
{
"_id" : ObjectId("5cd6ceb46d78f205348bc629"),
"CustomerName" : "Larry",
"CustomerPurchaseAmount" : 1900
}