MongoDB ऐरे के हर मान को इंडेक्स करता है ताकि आप एकल तत्वों के लिए क्वेरी कर सकें।
कॉन्सेप्ट समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:
> db.indexingForArrayElementDemo.insertOne({"StudentFavouriteSubject":["MongoDB","MySQL"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8acdca6cea1f28b7aa0816") }
find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:
> db.indexingForArrayElementDemo.find().pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }
यहाँ वह क्वेरी है जिससे MongoDB ऐरे को इंडेक्स करता है:
> db.indexingForArrayElementDemo.ensureIndex({"StudentFavouriteSubject":1});
आउटपुट निम्न है:
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
व्यक्तिगत ऐरे तत्वों के लिए क्वेरी यहाँ है:
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MongoDB"}).pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }
आइए एक और उदाहरण देखते हैं। क्वेरी इस प्रकार है:
> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MySQL"}).pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject" : [ "MongoDB", "MySQL" ] }