MongoDB में टैग द्वारा दस्तावेज़ प्राप्त करना
इसके लिए आप $elemMatch ऑपरेटर का उपयोग कर सकते हैं। आइए दस्तावेज़ों के साथ एक कलेक्शन बनाते हैं:
> db.getDocumentsByTagsDemo.insertOne({"Tags":["Tag-1", "Tag-2", "Tag-3"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9eb4d5d628fa4220163b79") }
> db.getDocumentsByTagsDemo.insertOne({"Tags":["Tag-2", "Tag-4", "Tag-5"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9eb4d5d628fa4220163b7a") }
> db.getDocumentsByTagsDemo.insertOne({"Tags":["Tag-6", "Tag-4", "Tag-3"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9eb4d6d628fa4220163b7b") }
find() मेथड से सभी दस्तावेज़ प्रदर्शित करना
> db.getDocumentsByTagsDemo.find().pretty();
यह निम्नलिखित आउटपुट देगा:
टैग द्वारा दस्तावेज़ प्राप्त करने का क्वेरी (Tag-2 वाले)
> db.getDocumentsByTagsDemo.find({Tags: { $elemMatch: { $eq: "Tag-2" } }}).pretty();यह निम्नलिखित आउटपुट देगा (पहले दो दस्तावेज़ जिनमें Tag-2 है):
विशिष्ट टैग खोजने का क्वेरी (Tag-5)
> db.getDocumentsByTagsDemo.find({Tags: "Tag-5"}).pretty();यह निम्नलिखित आउटपुट देगा: