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

सरणी के प्रत्येक तत्व की आवृत्ति की गणना करने के लिए MongoDB क्वेरी

<घंटा/>

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

> db.demo184.insertOne({"Names":["Chris","David","Bob"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3999fb9e4f06af55199805")
}
> db.demo184.insertOne({"Names":["Chris","Mike"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399a0d9e4f06af55199806")
}
> db.demo184.insertOne({"Names":["Chris","Bob","Carol"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399a209e4f06af55199807")
}

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

> db.demo184.find();

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

{ "_id" : ObjectId("5e3999fb9e4f06af55199805"), "Names" : [ "Chris", "David", "Bob" ] }
{ "_id" : ObjectId("5e399a0d9e4f06af55199806"), "Names" : [ "Chris", "Mike" ] }
{ "_id" : ObjectId("5e399a209e4f06af55199807"), "Names" : [ "Chris", "Bob", "Carol" ] }

प्रत्येक तत्व की आवृत्ति की गणना करने के लिए निम्नलिखित क्वेरी है -

> db.demo184.aggregate([
...   { "$unwind" : "$Names" },
...   { "$group": { "_id": "$Names", "count": { "$sum": 1} } },
...   { "$group": {
...      "_id": null,
...         "counts": {
...            "$push": {
...               "k": "$_id",
...               "v": "$count"
...            }
...         }
...      } },
...      { "$replaceRoot": {
...         "newRoot": { "$arrayToObject": "$counts" }
...   } }
...])

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

{ "Carol" : 1, "David" : 1, "Chris" : 3, "Bob" : 2, "Mike" : 1 }

  1. MongoDB क्वेरी दस्तावेज़ों में सरणी आइटमों की संख्या की गणना करने और एक नए क्षेत्र में प्रदर्शित करने के लिए

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

  1. सरणी के केवल एक तत्व को टुकड़ा करने के लिए MongoDB क्वेरी

    सरणी के केवल एक तत्व को स्लाइस करने के लिए, MongoDB में $slice का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo579.insertOne( ...    { ...       "_id" : 101, ...       "details" : { "FirstName" : "John"

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

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