$indexOfArray एग्रीगेशन ऑपरेटर
किसी सरणी फील्ड में विशिष्ट मान की **स्थिति (इंडेक्स)** ढूंढने के लिए (0-आधारित), एग्रीगेशन पाइपलाइन में $indexOfArray ऑपरेटर का उपयोग करें। यदि मान नहीं मिलता, तो -1 लौटाता है।
उदाहरण: डेटा डालना
> db.getIndexDemo.insertOne({"InstructorName":"Chris","InstructorSubject":["MongoDB","MySQL","Java","C++"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd5251de8cc557214c0df8") }
दस्तावेज़ देखना
> db.getIndexDemo.find().pretty();
आउटपुट:
"MongoDB" का इंडेक्स ढूंढना (पहला तत्व, इंडेक्स 0)
> db.getIndexDemo.aggregate([ ... { "$project": { "matchedIndex": { "$indexOfArray": [ "$InstructorSubject", "MongoDB" ] } } } ... ]);आउटपुट:
"C++" का इंडेक्स ढूंढना (चौथा तत्व, इंडेक्स 3)
> db.getIndexDemo.aggregate([ ... { "$project": { "matchedIndex": { "$indexOfArray": [ "$InstructorSubject", "C++" ] } } } ... ]);आउटपुट:
सिंटैक्स:
{ $indexOfArray: [। वैकल्पिक, , , ] } start_indexऔरend_indexखोज सीमा को सीमित करते हैं।नोट: सरणी इंडेक्स 0 से शुरू होते हैं। यह ऑपरेटर MongoDB 3.4+ में उपलब्ध है।