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

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

<घंटा/>

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

> db.demo598.insertOne(
...    {
...       Information:'Student',
...       id:100,
...       details:[
...          {Name:'Chris',Marks:75},
...          {Name:'Bob',Marks:55}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e947fccf5f1e70e134e2694")
}
> db.demo598.insertOne(
...    {
...       Information:'Student',
...       id:101,
...       details:[
...          {Name:'Chris',Marks:75},
...          {Name:'Bob',Marks:45}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e947fcdf5f1e70e134e2695")
}

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

> db.demo598.find();

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

{ "_id" : ObjectId("5e947fccf5f1e70e134e2694"), "Information" : "Student", "id" : 100, "details" : [
   { "Name" : "Chris", "Marks" : 75 },
   { "Name" : "Bob", "Marks" : 55 }
] }
{ "_id" : ObjectId("5e947fcdf5f1e70e134e2695"), "Information" : "Student", "id" : 101, "details" : [
   { "Name" : "Chris", "Marks" : 75 },
   { "Name" : "Bob", "Marks" : 45 }
] }

दस्तावेज़ और सरणी तत्वों से औसत प्राप्त करने की क्वेरी निम्नलिखित है -

> db.demo598.aggregate([
...
...    { "$group": {
...       "_id": "Information",
...       "id": { "$avg": "$id" },
...       "details": { "$push": "$details" }
...    }},
...    { "$unwind": "$details" },
...    { "$unwind": "$details" },
...    { "$group": {
...       "_id": { "Information": "$_id", "Name": "$details.Name" },
...       "id": { "$avg": "$id" },
...       "AvgValue": { "$avg": "$details.Marks" }
...    }},
...    { "$sort": { "_id": 1 } },
...    { "$group": {
...       "_id": "$_id.Information",
...       "id": { "$avg": "$id" },
...       "details": { "$push": {
...          "Name": "$_id.Name",
...          "MarksAvg": "$AvgValue"
...       }}
...    }}
... ]).pretty();

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

{
   "_id" : "Information",
   "id" : 100.5,
   "details" : [
      {
         "Name" : "Bob",
         "MarksAvg" : 50
      },
      {
         "Name" : "Chris",
         "MarksAvg" : 75
      }
   ]
}

  1. मैं MongoDB दस्तावेज़ से ईमेल-आईडी कैसे प्राप्त करूं और प्रिंट के साथ प्रदर्शित करूं ()

    इसके लिए, ईमेल-आईडी मानों को प्रदर्शित करने के लिए प्रत्येक () के साथ-साथ प्रिंट () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo690.insertOne({UserName:David,UserEmailId:David@gmail.com});{ acknowledged :true, insertId :ObjectId(5ea6db47551299a9f98c939e)} संग्रह से सभी दस्तावेज़ो

  1. सरणी तत्व के एकत्रीकरण में औसत प्राप्त करने के लिए MongoDB क्वेरी?

    औसत सरणी तत्व प्राप्त करने के लिए, $avg का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo584.insertOne({"Marks":[75,50,85,60,80]});{    "acknowledged" : true,    "insertedId" : ObjectId("5e91d827fd2d90c177b5bcc2") } संग्र

  1. MongoDB दस्तावेज़ों में किसी विशिष्ट फ़ील्ड से सरणी तत्वों की गिनती प्राप्त करें?

    किसी विशिष्ट फ़ील्ड से सरणी तत्वों की गणना करने के लिए, MongoDB में $size का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo723.insertOne({"Subject":["MySQL","MongoDB"]}); {    "acknowledged" : true,    "insertedId&quo