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

MongoDB में एक ऐरे में स्थिति पुनर्प्राप्त करें?

<घंटा/>

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

> db.retrievePositionDemo.find();
{ "_id" : ObjectId("5cd569ec7924bb85b3f4893f"), "Subjects" : [ "MySQL", "MongoDB", "Java" ] }

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

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

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

{
    "_id" : ObjectId("5cd569ec7924bb85b3f4893f"),
    "Subjects" : [
       "MySQL",
       "MongoDB",
        "Java"
    ]
}

MongoDB में एक सरणी में स्थिति को पुनः प्राप्त करने के लिए क्वेरी निम्नलिखित है -

> db.retrievePositionDemo.mapReduce(
...     function() {
...         emit(this._id,{ "IndexValue": this.Subjects.indexOf("MongoDB") });
...     },
...     function() {},
...     {
...         "out": { "inline": 1 },
...         "query": { "Subjects":"MongoDB"}
...     }
... );

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

{
   "results" : [
      {
        "_id" : ObjectId("5cd569ec7924bb85b3f4893f"),
         "value" : {
            "IndexValue" : 1
         }
      }
   ],
   "timeMillis" : 662,
   "counts" : {
      "input" : 1,
      "emit" : 1,
      "reduce" : 0,
      "output" : 1
   },
   "ok" : 1
}

उपरोक्त नमूना आउटपुट को देखें, "MongoDB" मान का सूचकांक या स्थिति 1 है। आप "जावा" मान की जांच कर सकते हैं, जो स्थिति 2 पर है -

> db.retrievePositionDemo.mapReduce(
...     function() {
...         emit(this._id,{ "IndexValue": this.Subjects.indexOf("Java") });
...     },
...     function() {},
...     {
...         "out": { "inline": 1 },
...         "query": { "Subjects":"MongoDB"}
...     }
... );

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

{
   "results" : [
      {
         "_id" : ObjectId("5cd569ec7924bb85b3f4893f"),
         "value" : {
            "IndexValue" : 2
         }
      }
   ],
   "timeMillis" : 30,
   "counts" : {
      "input" : 1,
      "emit" : 1,
      "reduce" : 0,
      "output" : 1
   },
   "ok" : 1
}

  1. MongoDB में सरणी सामग्री में अंतर के आधार पर कैसे छाँटें?

    अंतर के आधार पर छाँटने के लिए, MongoDB में समुच्चय () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo155.insertOne({"Scores":[{"Value":45},{"Value":50}]}); {    "acknowledged" : true,    "insertedId" : ObjectId

  1. सरणी की लंबाई प्राप्त करने के लिए MongoDB कुल $slice

    इसके लिए, $project का उपयोग करें और उसमें लंबाई प्राप्त करने के लिए $size का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo382.insertOne( ...    { ... ...       "Name" : "David", ...       "details" : [ ...

  1. MongoDB में संग्रह के सापेक्ष दस्तावेज़ की स्थिति कैसे वापस करें?

    संग्रह के सापेक्ष दस्तावेज़ की स्थिति वापस करने के लिए, गणना () के साथ सॉर्ट () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo47.insertOne({ClientName:Sam});{ acknowledgeed :true, insertedId :ObjectId(5e26724ccfb11e5c)} संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्