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

सरणी के अंदर सरणी टुकड़ा करने के लिए MongoDB एकत्रीकरण

<घंटा/>

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

> db.demo111.insertOne(
...    {
...       "_id" : 101,
...       "Name" : "Chris",
...       "Details" : [
...          {
...             "_id" : 101,
...             "Score" : 78,
...             "Subjects" : [
...                {
...                   "_id" : "10001",
...                   "SubjectName" : "MySQL"
...                },
...                {
...                   "_id" : "10003",
...                   "SubjectName" : "MongoDB"
...                }
...             ]
...          },
...          {
...             "_id" : 102,
...             "Score" : 87,
...             "Subjects" : [
...                {
...                   "_id" : "10004",
...                   "SubjectName" : "Java"
...                }
...             ]
...          }
...       ]
...    }
... );
{ "acknowledged" : true, "insertedId" : 101 }

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

> db.demo111.find();

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

{
   "_id" : 101, "Name" : "Chris", "Details" : [
      { "_id" : 101, "Score" : 78, "Subjects" : [ { "_id" : "10001", "SubjectName" : "MySQL" },
      { "_id" : "10003", "SubjectName" : "MongoDB" } ] },
      { "_id" : 102, "Score" : 87, "Subjects" : [ { "_id" : "10004", "SubjectName" : "Java" } ] }
   ]
}

सरणी के अंदर सरणी को स्लाइस करने के लिए क्वेरी निम्नलिखित है -

> db.demo111.aggregate([
...    { "$addFields": {
...       "Details": {
...          "$map": {
...             "input": "$Details",
...             "as": "out",
...             "in": {
...                "_id": "$$out._id",
...                "Score": "$$out.Score",
...                "Subjects": { "$slice": [ "$$out.Subjects", 1 ] }
...             }
...          }
...       }
...    }}
... ])

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

{
   "_id" : 101, "Name" : "Chris", "Details" : [
      { "_id" : 101, "Score" : 78, "Subjects" : [ { "_id" : "10001", "SubjectName" : "MySQL" } ] },
      { "_id" : 102, "Score" : 87, "Subjects" : [ { "_id" : "10004", "SubjectName" : "Java" } ] }
   ] 
}

  1. जावास्क्रिप्ट ऐरे स्लाइस ()

    एक सरणी में चयनित तत्वों को वापस करने के लिए जावास्क्रिप्ट की स्लाइस () विधि का उपयोग किया जाता है। वाक्य रचना इस प्रकार है - array.slice(start, end) ऊपर, प्रारंभ पैरामीटर एक पूर्णांक है जो निर्दिष्ट करता है कि चयन कहां से शुरू करना है, जबकि अंत वह है जहां चयन समाप्त होता है। आइए अब जावास्क्रिप्

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

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

  1. MongoDB एकत्रीकरण में एक सरणी के तत्वों का सबसेट एक साथ कैसे जोड़ें?

    एक सरणी के तत्वों के सबसेट को एक साथ जोड़ने के लिए, $sum के साथ $first का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo610.insertOne({Values:[10,20,30,40,50]});{    "acknowledged" : true, "insertedId" : ObjectId("5e9747b8f57d0dc0b182d62e") }