डॉट नोटेशन का प्रयोग करें:
<ब्लॉकक्वॉट>जब फ़ील्ड में एक एम्बेडेड दस्तावेज़ होता है, तो एक क्वेरी या तो एम्बेडेड दस्तावेज़ पर सटीक मिलान निर्दिष्ट कर सकती है या डॉट नोटेशन का उपयोग करके एम्बेडेड दस्तावेज़ में अलग-अलग फ़ील्ड द्वारा एक मिलान निर्दिष्ट कर सकती है।
db.coll.find({
"accounts._id" :ObjectId("5546329a470019850084a611")
})
यदि आपको केवल उस सरणी के भाग को आउटपुट करने की आवश्यकता है जहां आपके पास आपका _id है तो आपको प्रक्षेपण में डॉलर का उपयोग करने की आवश्यकता है
<ब्लॉकक्वॉट>स्थितीय $ ऑपरेटर क्वेरी परिणामों से एक की सामग्री को सीमित करता है, जिसमें केवल क्वेरी दस्तावेज़ से मेल खाने वाला पहला तत्व होता है।
और आपकी क्वेरी इस तरह दिखेगी:
db.coll.find({
"accounts._id" :ObjectId("5546329a470019850084a611")
}, {
"accounts.$.": 1
})
पी.एस. यदि आपको अपने संशोधित प्रश्नों की तरह आउटपुट की आवश्यकता है, तो इसका उपयोग करें:
db.coll.find({
"accounts._id" :ObjectId("5546329a470019850084a611")
}, {
accounts : 0
})