यह बहु स्तरीय एम्बेडेड दस्तावेज़ को फ़िल्टर करने का व्यवहार है, आम तौर पर मिलान करने वाला फ़िल्टर पूरे दस्तावेज़ को वापस कर देगा, न कि सबसेट।
आमतौर पर positional operator $
updates
. में उप दस्तावेज़ों का मिलान करने के लिए उपयोग किया जाता है . लेकिन यह सुविधा अभी तक रिटर्न स्पेसिफायर में लागू नहीं की गई है।
मोंगो में पहले से ही एक बकाया समस्या है विनिर्देशक को वापस करने के लिए फ़ील्ड में स्थितीय ($) ऑपरेटर के लिए समर्थनए> . (यदि आपको वास्तव में इस सुविधा की आवश्यकता है तो वोट करने के लिए लॉग इन करें)
तो आपको इसे संभालने के लिए अपनी स्कीमा को फिर से डिजाइन करना होगा, ऐसा हो सकता है
db.test.insert({"person" : [ { "id":1, "details" : { "name" : "Aswini", "Age" : 10 }}]})
db.test.insert({"person" : [ { "id":2, "details" : { "name" : "Mahesh", "Age" : 11}}]})
db.test.find({"person.id":1},{'person.details':1})