MongoDB में $mul ऑपरेटर का उपयोग करके संख्यात्मक फील्ड को प्रतिशत से बढ़ाना
MongoDB में किसी संख्यात्मक फील्ड को एक गुणक से बढ़ाने के लिए $mul ऑपरेटर का उपयोग करें। यह वेतन वृद्धि, मूल्य समायोजन आदि के लिए उपयोगी है।
उदाहरण: संग्रह और दस्तावेज़ बनाना
> db.demo417.insertOne({"EmployeeName":"Chris","EmployeeSalary":500});
{ "acknowledged" : true, "insertedId" : ObjectId("5e723ebbb912067e57771ae4") }
> db.demo417.insertOne({"EmployeeName":"Mike","EmployeeSalary":1000});
{ "acknowledged" : true, "insertedId" : ObjectId("5e723ed7b912067e57771ae5") }
सभी दस्तावेज़ देखना
> db.demo417.find();
आउटपुट:
{ "_id" : ObjectId("5e723ebbb912067e57771ae4"), "EmployeeName" : "Chris", "EmployeeSalary" : 500 }
{ "_id" : ObjectId("5e723ed7b912067e57771ae5"), "EmployeeName" : "Mike", "EmployeeSalary" : 1000 }
निर्दिष्ट कर्मचारियों के वेतन को 10% बढ़ाना (1.1 से गुणा)
> db.demo417.update(
{ "EmployeeName": { $in: ["Chris", "Mike"] } },
{ $mul: { EmployeeSalary: 1.1 }},
{multi:true}
);
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })
अपडेट के बाद दस्तावेज़ देखना
> db.demo417.find();
आउटपुट:
{ "_id" : ObjectId("5e723ebbb912067e57771ae4"), "EmployeeName" : "Chris", "EmployeeSalary" : 550 }
{ "_id" : ObjectId("5e723ed7b912067e57771ae5"), "EmployeeName" : "Mike", "EmployeeSalary" : 1100 }
मुख्य बिंदु:
$mul- फील्ड मान को निर्दिष्ट संख्या से गुणा करता है1.1= 110% = 10% वृद्धि0.9= 90% = 10% कमी{multi:true}- सभी मिलान करने वाले दस्तावेज़ अपडेट करता है (डिफ़ॉल्ट false)$in- निर्दिष्ट मानों में से किसी से मेल खाता है
आधुनिक सिंटैक्स:
db.demo417.updateMany(
{ EmployeeName: { $in: ["Chris", "Mike"] } },
{ $mul: { EmployeeSalary: 1.1 } }
)
अन्य अंकगणित ऑपरेटर्स:
$inc- जोड़/घटाव:{$inc: {salary: 500}}$mul- गुणा:{$mul: {salary: 1.1}}- दोनों एटॉमिक हैं और केवल संख्यात्मक फील्ड्स पर काम करते हैं