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

उप-दस्तावेज़ सरणी के nवें तत्व (चर सूचकांक) पर MongoDB क्वेरी

<घंटा/>

इसके लिए $let के साथ $expr का प्रयोग करें। यहां, अस्थायी चर को परिभाषित करने के लिए $let का उपयोग किया जाता है। $expr का उपयोग एकत्रीकरण अभिव्यक्तियों के लिए किया जाता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo72.insertOne(
... {
...    StudentDetails:[
...       {
...          Name: "Chris",
...          Age: 21
...       },
...       {
...          Name: "David",
...          Age: 23
...       },
...       {
...          Name: "Bob",
...          Age: 20
...       },
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e29b4ad71bf0181ecc42269")
}

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

> db.demo72.find().pretty();

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

{
   "_id" : ObjectId("5e29b4ad71bf0181ecc42269"),
   "StudentDetails" : [
      {
         "Name" : "Chris",
         "Age" : 21
      },
      {
         "Name" : "David",
         "Age" : 23
      },
      {
         "Name" : "Bob",
         "Age" : 20
      }
   ]
}

उप-दस्तावेज़ सरणी के nवें तत्व (चर सूचकांक) पर क्वेरी निम्नलिखित है -

> db.demo72.find({
... $expr: {
...    $let: {
...       vars: { fst: { $arrayElemAt: [ "$StudentDetails", 1 ] } },
...       in: { $eq: [ "$$fst.Name", "David" ] }
...       }
...    }
... })

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

{
   "_id" : ObjectId("5e29b4ad71bf0181ecc42269"),
   "StudentDetails" : [
      {
         "Name" : "Chris",
         "Age" : 21
      },
      {
         "Name" : "David",
         "Age" : 23
      },
      {
         "Name" : "Bob",
         "Age" : 20
      }
   ]
}

  1. MongoDB में उप-दस्तावेज़ों की क्वेरी सरणी

    उप-दस्तावेज़ों की एक सरणी को क्वेरी करने के लिए, MongoDB में $unwind का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo499.insertOne({ ... "details": ...    [ ...       { ...          Name :"MIT", ...    

  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") } संग्र