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

नेस्टेड दस्तावेज़ों के लिए MongoDB में एकत्रीकरण?

<घंटा/>

MongoDB में एकत्रीकरण के लिए, कुल () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo199.insertOne(
...   {
...      "details1":{
...         "details2":{
...            "details3":{
...               "Name":"Chris",
...               "details4":{
...                  "details5":{
...                     "v1":10,
...                     "v2":20,
...                     "v3":30
...                  }
...               }
...    }}}}
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3c24aa03d395bdc21346e2")
}
>
> db.demo199.insertOne(
...   {
...      "details1":{
...         "details2":{
...            "details3":{
...               "Name":"Chris",
...               "details4":{
...                  "details5":{
...                     "v1":30,
...                     "v2":40,
...                     "v3":50
...                  }
...               }
...   }}}}
...);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3c24ab03d395bdc21346e3")
}

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

> db.demo199.find();

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

{ "_id" : ObjectId("5e3c24aa03d395bdc21346e2"), "details1" : { "details2" : { "details3" : { "Name" : "Chris", "details4" : { "details5" : { "v1" : 10, "v2" : 20, "v3" : 30 } } } } } }
{ "_id" : ObjectId("5e3c24ab03d395bdc21346e3"), "details1" : { "details2" : { "details3" : { "Name" : "Chris", "details4" : { "details5" : { "v1" : 30, "v2" : 40, "v3" : 50 } } } } } }

नेस्टेड दस्तावेज़ों के लिए MongoDB में एकत्रीकरण की क्वेरी निम्नलिखित है -

> var out = [
...   {
...      "$unwind": "$details1.details2"
...   },
...   {
...      "$group": {
...         "_id": "$details1.details2._id",
...         "v1": { "$sum": "$details1.details2.details3.details4.details5.v1" },
...         "v2": { "$sum": "$details1.details2.details3.details4.details5.v2" },
...         "v3": { "$sum": "$details1.details2.details3.details4.details5.v3" },
...      }
...   }
...]
> result = db.demo199.aggregate(out);

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

{ "_id" : null, "v1" : 40, "v2" : 60, "v3" : 80 }

  1. विभिन्न दस्तावेजों में समान आईडी वाले तत्वों का MongoDB एकत्रीकरण?

    दस्तावेज़ों के ऐसे समूहन के लिए, MongoDB समुच्चय () में $group का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo602.insertOne({id:1,Name:"Chris"});{    "acknowledged" : true, "insertedId" : ObjectId("5e960080ed011c280a0905c9") } >

  1. MongoDB में नेस्टेड सरणी के लिए फ़िल्टरिंग शर्तें सेट करें

    फ़िल्टरिंग की स्थिति सेट करने के लिए, MongoDB एग्रीगेट () में $filter और $cond का उपयोग करें। $filter निर्दिष्ट शर्त के आधार पर लौटने के लिए एक सरणी के सबसेट का चयन करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo725.insertOne( ...    { ... ...       "detai

  1. MongoDB के साथ विशिष्ट नेस्टेड दस्तावेज़ों के लिए वस्तुओं की एक सरणी पर पूछताछ?

    नेस्टेड दस्तावेज़ों के लिए ऑब्जेक्ट्स की एक सरणी पर क्वेरी करने के लिए, ढूंढें () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo763.insertOne( ...    { ...       _id:1, ...       CountryName:"US", ...       "s