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

MongoDB में विभिन्न संग्रह तत्वों में अद्वितीय गुणों का योग करें और परिणामी मूल्य प्राप्त करें?


विभिन्न संग्रह तत्वों में अद्वितीय गुणों के योग की गणना करने के लिए, $cond के साथ $group का उपयोग करें। यह परिणामी मूल्य देता है।

आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo580.insertOne(
...    {
...       "Name":"John",
...       "Id1":"110",
...       "Id2":"111",
...       "Price":10.5
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e918cebfd2d90c177b5bcae")
}
>
> db.demo580.insertOne(
... {
...    "Name":"John",
...    "Id1":"111",
...    "Id2":"",
...    "Price":9.5
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e918cecfd2d90c177b5bcaf")
}

संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -

> db.demo580.find();

यह निम्नलिखित आउटपुट देगा -

{ "_id" : ObjectId("5e918cebfd2d90c177b5bcae"), "Name" : "John", "Id1" : "110", "Id2" : "111", "Price" : 10.5 }
{ "_id" : ObjectId("5e918cecfd2d90c177b5bcaf"), "Name" : "John", "Id1" : "111", "Id2" : "", "Price" : 9.5 }

विभिन्न संग्रह तत्वों में अद्वितीय गुणों के योग की क्वेरी निम्नलिखित है -

> db.demo580.aggregate([
...    {
...       $project: {
...          Id1: 1,
...          Id2: 1,
...          Price: 1,
...          match: {
...             $cond: [
...                {$eq: ["$Id2", ""]},
...                "$Id1",
...                "$Id2"
...             ]
...          }
...       }
...    },
...    {
...       $group: {
...          _id: '$match',
...          Price: {$sum: '$Price'},
...          resultId: {
...             $addToSet: {
...             $cond: [
...                {$eq: ['$match', '$Id1']},
...                null,
...                '$Id1'
...             ]
...          }
...       }
...    }
... },
... {$unwind: '$resultId'},
... {$match: {
...       resultId: {
...          $ne: null
...       }
...    }
... },
... {
...    $project: {
...       Id1: '$resultId',
...       Price: 1,
...       _id: 0
...    }
... }
... ])

यह निम्नलिखित आउटपुट देगा -

{ "Price" : 20, "Id1" : "110" }

  1. MongoDB कुल दस्तावेज़ और सरणी तत्वों से औसत प्राप्त करने के लिए?

    इसके लिए, $avg के साथ $group और समुच्चय() का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo598.insertOne( ...    { ...       Information:'Student', ...       id:100, ...       details:[ ...         &

  1. MongoDB संग्रह में सभी नाम प्राप्त करें

    मूल रूप से 18 जनवरी, 2019 को ObjectRocket.com/blog पर प्रकाशित हुआ। अपने स्कीमा को सत्यापित करने के लिए, फ़ील्ड में टाइपो के लिए डीबग करें, या ऐसे फ़ील्ड ढूंढें जिन्हें आपको सेट नहीं करना चाहिए, आपको अपने MongoDB® संग्रह में सभी कुंजियों की समझ की आवश्यकता है। ObjectRocket सहित कई MongoDB-as-a-S

  1. MongoDB संग्रह में सभी कुंजियों के नाम प्राप्त करें

    अपने स्कीमा को सत्यापित करने के लिए, फ़ील्ड में टाइपो के लिए डीबग करें, या ऐसे फ़ील्ड ढूंढें जिन्हें सेट नहीं किया जाना चाहिए, आपको अपने MongoDB संग्रह में सभी कुंजियों की समझ प्राप्त करने की आवश्यकता होगी। कई MongoDB-as-a-service कंपनियाँ UI में इस अधिकार को करने का एक आसान तरीका प्रदान करती हैं,