मान खोजने के लिए MongoDB में $match का उपयोग करें।
नमूना डेटा बनाना (एम्बेडेड ऐरे)
> db.demo648.insertOne( {
StudentInformation: [
{ Name:"John", CountryName:"US" },
{ Name:"David", CountryName:"AUS" },
{ Name:"Chris", CountryName:"US" },
{ Name:"Robert", CountryName:"UK" }
]
} );
सभी दस्तावेज़ देखना
> db.demo648.find();
{ "StudentInformation" : [ { "Name" : "John", "CountryName" : "US" }, { "Name" : "David", "CountryName" : "AUS" }, { "Name" : "Chris", "CountryName" : "US" }, { "Name" : "Robert", "CountryName" : "UK" } ] }
CountryName="US" वाले छात्र खोजने की क्वेरी
> db.demo648.aggregate([
{ $unwind: "$StudentInformation" },
{ $match: { "StudentInformation.CountryName": "US" } },
{ $project: {_id: 0}}
])
परिणाम (US वाले छात्र):
{ "StudentInformation" : { "Name" : "John", "CountryName" : "US" } }
{ "StudentInformation" : { "Name" : "Chris", "CountryName" : "US" } }
व्याख्या: $unwind StudentInformation ऐरे को फ्लैट करता है, प्रत्येक छात्र के लिए अलग दस्तावेज़ बनाता है। $match CountryName="US" वाले फ़िल्टर करता है। $project _id छुपाता है।