MongoDB में $inc ऑपरेटर से एक साथ मल्टीपल फील्ड्स इन्क्रीमेंट करना
MongoDB में एक ही कमांड में कई फील्ड्स को इन्क्रीमेंट करने के लिए $inc ऑपरेटर का उपयोग करें।
उदाहरण: कलेक्शन और डॉक्यूमेंट बनाना
> db.incrementDemo.insertOne({"Value1":10,"Value2":20});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbdaf07de8cc557214c0e15") }
डॉक्यूमेंट देखना
> db.incrementDemo.find().pretty();
आउटपुट:
{ "_id" : ObjectId("5cbdaf07de8cc557214c0e15"), "Value1" : 10, "Value2" : 20 }
दोनों फील्ड्स को 1 से इन्क्रीमेंट करना
> db.incrementDemo.update({},{ $inc : { Value1 : 1, Value2 : 1 } });
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
परिणाम वेरिफाई करना
> db.incrementDemo.find().pretty();
आउटपुट:
{ "_id" : ObjectId("5cbdaf07de8cc557214c0e15"), "Value1" : 11, "Value2" : 21 }
मुख्य बिंदु:
$incऑपरेटर फील्ड की वैल्यू को निर्दिष्ट मात्रा से बढ़ाता है- नेगेटिव वैल्यू देकर डिक्रीमेंट भी कर सकते हैं
- यदि फील्ड मौजूद नहीं है, तो यह उसे बना देगा (upsert के साथ)
- एक ही ऑपरेशन में कई फील्ड्स अपडेट करना एटॉमिक होता है