Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB एग्रीगेशन में $divide ऑपरेटर से विभाजन करें

MongoDB एग्रीगेशन: $divide ऑपरेटर से दो फ़ील्ड का भागफल निकालना

$divide एग्रीगेशन ऑपरेटर दो संख्याओं को विभाजित करता है। सिंटैक्स: {$divide: ["$numerator", "$denominator"]}

कलेक्शन बनाएं और डॉक्यूमेंट इन्सर्ट करें

> db.aggregationOperatorDemo.insertOne({"FirstValue": 392883, "SecondValue": 10000000000});
{ "acknowledged": true, "insertedId": ObjectId("5cd541452cba06f46efe9f01") }

डॉक्यूमेंट देखें

> db.aggregationOperatorDemo.find().pretty();
{ "_id": ObjectId("5cd541452cba06f46efe9f01"), "FirstValue": 392883, "SecondValue": 10000000000 }

$divide से FirstValue / SecondValue निकालें

> db.aggregationOperatorDemo.aggregate([
  {$project: {Value: {$divide: ["$FirstValue", "$SecondValue"]}}}
]);
{ "_id": ObjectId("5cd541452cba06f46efe9f01"), "Value": 0.0000392883 }

गणना

392883 / 10000000000 = 0.0000392883

अन्य अंकगणित ऑपरेटर

ऑपरेटरकार्यउदाहरण
$addजोड़{$add: ["$a", "$b"]}
$subtractघटाव{$subtract: ["$a", "$b"]}
$multiplyगुणा{$multiply: ["$a", "$b"]}
$divideभाग{$divide: ["$a", "$b"]}
$modमॉड्यूलो{$mod: ["$a", "$b"]}
$powघातांक{$pow: ["$a", "$b"]}
$sqrtवर्गमूल{$sqrt: "$a"}

उपयोग के मामले

  • प्रतिशत गणना: {$multiply: [{$divide: ["$part", "$total"]}, 100]}
  • दर/अनुपात: {$divide: ["$distance", "$time"]}
  • यूनिट कन्वर्जन: {$divide: ["$bytes", 1024]}

नोट

  • भाजक (denominator) 0 नहीं होना चाहिए (एरर देगा)
  • दोनों ऑपरेंड संख्या होने चाहिए
  • परिणाम डबल (फ्लोटिंग पॉइंट) होता है
  1. - MongoDB एग्रीगेशन में $ifNull का उपयोग कैसे करें?

    MongoDB एग्रीगेशन में $ifNull एक्सप्रेशन एक एक्सप्रेशन का मूल्यांकन करता है और यदि यह गैर-नल है तो उसका मान लौटाता है; अन्यथा एक निर्दिष्ट प्रतिस्थापन मान लौटाता है। सिंटैक्स: { $ifNull: [ <expression>, <replacement> ] }। उदाहरण: नल FirstName वाले दस्तावेज़ > db.demo372.insertOne({Fi

  1. - MongoDB एग्रीगेशन में मल्टीपल फ़ील्ड्स द्वारा काउंट करना

    एक ही पाइपलाइन में कई फ़ील्ड्स पर काउंट करने के लिए $facet का उपयोग करें। डेमो डेटा db.demo721.insertOne({ details1: { id:101 }, details2: { id:101 }, details3: { id:101 } }); db.demo721.insertOne({ details1: { id:101 }, details2: { id:102 }, details3: { id:102 } }); क्वेरी

  1. - MongoDB एग्रीगेशन और प्रोजेक्शन

    इसके लिए aggregate() के साथ $project का उपयोग करें। एग्रीगेशन में $project पाइपलाइन में अगले चरण के लिए अनुरोधित फील्ड्स के साथ डॉक्यूमेंट्स को पास करता है। आइए एक कलेक्शन बनाते हैं: > db.demo762.insertOne({ _id : { userId:101, userName:Chris }, countryName : US, details : [ { Name : Robert, Due