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

डुप्लिकेट आईडी के साथ कुल अंकों की गणना करने के लिए कई स्तंभों द्वारा MongoDB समूह के साथ योग

<घंटा/>

इसके लिए $group के साथ समुच्चय () का प्रयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo627.insertOne({id:101,"Name":"Chris","Marks":54});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9acb306c954c74be91e6b2")
}
> db.demo627.insertOne({id:102,"Name":"Bob","Marks":74});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9acb3c6c954c74be91e6b3")
}
> db.demo627.insertOne({id:101,"Name":"Chris","Marks":87});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9acb426c954c74be91e6b4")
}
> db.demo627.insertOne({id:102,"Name":"Mike","Marks":70});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9acb4b6c954c74be91e6b5")
}

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

> db.demo627.find();

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

{ "_id" : ObjectId("5e9acb306c954c74be91e6b2"), "id" : 101, "Name" : "Chris", "Marks" : 54 }
{ "_id" : ObjectId("5e9acb3c6c954c74be91e6b3"), "id" : 102, "Name" : "Bob", "Marks" : 74 }
{ "_id" : ObjectId("5e9acb426c954c74be91e6b4"), "id" : 101, "Name" : "Chris", "Marks" : 87 }
{ "_id" : ObjectId("5e9acb4b6c954c74be91e6b5"), "id" : 102, "Name" : "Mike", "Marks" : 70 }

डुप्लिकेट आईडी के साथ कुल अंकों की गणना करने के लिए कई कॉलम द्वारा MongoDB समूह के साथ योग करने की क्वेरी निम्नलिखित है -

> db.demo627.aggregate([
...    { "$group": {
...       "_id": {
...          "id" : "$id",
..         . "Name":"$Name"
...       },
...       "Marks": { "$sum": "$Marks" }
...    }},
...    { "$group": {
...       "_id": {
...          "id" : "$_id.id",
...          "Name": "$_id.Name"
...       },
...
...       "TotalMarks": { "$sum": "$Marks" }
...    }}
... ], { "allowDiskUse": true }
... );

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

{ "_id" : { "id" : 101, "Name" : "Chris" }, "TotalMarks" : 141 }
{ "_id" : { "id" : 102, "Name" : "Bob" }, "TotalMarks" : 74 }
{ "_id" : { "id" : 102, "Name" : "Mike" }, "TotalMarks" : 70 }

  1. MongoDB में सरणियों के साथ परिणाम द्वारा समूह को पुनः प्राप्त करना?

    सरणियों के साथ परिणाम के आधार पर समूह को पुनः प्राप्त करने के लिए, समुच्चय() का उपयोग करें। हम $addToSet ऑपरेटर का भी उपयोग करेंगे। यह एक सरणी में एक मान जोड़ता है जब तक कि मान पहले से मौजूद न हो, उस स्थिति में $addToSet उस सरणी के लिए कुछ भी नहीं करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - &g

  1. MongoDB एकत्रीकरण के साथ कई क्षेत्रों द्वारा गणना करें

    एकाधिक फ़ील्ड द्वारा गिनने के लिए, MongoDB में $facet का उपयोग करें। $facet इनपुट दस्तावेज़ों के एक ही सेट पर एक ही चरण में कई एकत्रीकरण पाइपलाइनों को संसाधित करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo721.insertOne(... {...... details1:{... id:101......},. .. details2:{... id:102...},

  1. MongoDB कुल समूह एकाधिक परिणाम?

    एकाधिक परिणामों को एकत्रित करने के लिए, MongoDB में $group का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo765.insertOne( ... ...    { ...       Name:"John", ...       "Category":"ComputerScience", ...   &n