MongoDB में फर्स्ट लेवल ऐरे पर $elemMatch के बजाय $in का उपयोग
आप फर्स्ट लेवल ऐरे पर $elemMatch के बजाय $in ऑपरेटर का उपयोग कर सकते हैं। सिंटैक्स निम्नलिखित है:
db.yourCollectionName.find({yourFieldName:{$in:["yourValue"]}}).pretty();
उदाहरण: दस्तावेज़ों के साथ एक कलेक्शन बनाना
>db.firstLevelArrayDemo.insertOne({"StudentName":"Chris","StudentTechnicalSkills":["Mongo DB","MySQL","SQL Server"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca2360f66324ffac2a7dc71") }
>db.firstLevelArrayDemo.insertOne({"StudentName":"Robert","StudentTechnicalSkills":["C","Java","C++"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca2362766324ffac2a7dc72") }
find() मेथड से सभी दस्तावेज़ प्रदर्शित करना
> db.firstLevelArrayDemo.find().pretty();
यह निम्नलिखित आउटपुट देगा:
फर्स्ट लेवल ऐरे पर मिलान करने का क्वेरी
> db.firstLevelArrayDemo.find({StudentTechnicalSkills:{$in:["MongoDB"]}}).pretty();यह निम्नलिखित आउटपुट देगा (Chris का दस्तावेज़ जिसमें MongoDB स्किल है):