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

MongoDB में सरणी फ़ील्ड में दिए गए तत्व की अनुक्रमणिका प्राप्त करें?

<घंटा/>

आप इसके लिए $indexOfArray ऑपरेटर का उपयोग कर सकते हैं। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

>db.getIndexDemo.insertOne({"InstructorName":"Chris","InstructorSubject":["MongoDB","MySQL","Java","C++"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cbd5251de8cc557214c0df8")
}

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

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

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

{
   "_id" : ObjectId("5cbd5251de8cc557214c0df8"),
   "InstructorName" : "Chris",
   "InstructorSubject" : [
      "MongoDB",
      "MySQL",
      "Java",
      "C++"
   ]
}

MongoDB में एक सरणी फ़ील्ड में दिए गए तत्व की अनुक्रमणिका प्राप्त करने के लिए क्वेरी निम्नलिखित है -

> db.getIndexDemo.aggregate( [ { "$project": { "matchedIndex": { "$indexOfArray": [ "$InstructorSubject", "MongoDB" ] } } } ] );

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

{ "_id" : ObjectId("5cbd5251de8cc557214c0df8"), "matchedIndex" : 0 }

MongoDB में सरणी फ़ील्ड में किसी अन्य तत्व की अनुक्रमणिका प्राप्त करने के लिए क्वेरी निम्नलिखित है -

> db.getIndexDemo.aggregate( [ { "$project": { "matchedIndex": { "$indexOfArray": [ "$InstructorSubject", "C++" ] } } } ] );

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

{ "_id" : ObjectId("5cbd5251de8cc557214c0df8"), "matchedIndex" : 3 }


नोट - जैसा कि हम जानते हैं, अधिकांश भाषाओं में सरणी अनुक्रमणिका 0 से शुरू होती है, सरणी के पहले तत्व में 0 अनुक्रमणिका होगी और अंतिम तत्व में (n-1) अनुक्रमणिका होगी, जहां n सरणी के तत्वों की संख्या है।


  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

  1. सी ++ में दिए गए इंडेक्स रेंज [एल - आर] में सरणी तत्व हटाएं?

    आइए पहले मूल सरणी और सरणी तत्वों को हटाने के लिए अनन्य श्रेणी को परिभाषित करें और मूल सरणी लंबाई भी खोजें - int arr[] = { 2,4,6,8,10,12,14,16,18,20}; int L = 2, R = 6; int length = sizeof(arr) / sizeof(arr[0]); अब हम ऐरे में लूप करते हैं और यदि इंडेक्स पोजीशन (i) L या R से अधिक है तो हम वेरिएबल k क