यह पता लगाने के लिए कि कुंजियाँ कब अज्ञात हैं, $addField और $objectToArray का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -
> db.demo375.insertOne(... {... "विवरण":{... "नाम":"जॉन",... "आयु":23...}...}. ..);{"स्वीकृत" :सच, "insertedId" :ObjectId("5e5a0ae42ae06a1609a00b06")}> db.demo375.insertOne(... {... "विवरण":{... "नाम":"डेविड ",... "आयु":21...}...}...);{ "स्वीकृत" :सच, "insertId" :ObjectId("5e5a0ae42ae06a1609a00b07")}> db.demo375.insertOne(.. {... "विवरण":{... "नाम":"डेविड", ... "आयु":22...}...}...); { "स्वीकृत":सच, " insertId" :ObjectId("5e5a0ae42ae06a1609a00b08")}
संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -
> db.demo375.find();
यह निम्नलिखित आउटपुट देगा -
{ "_id" :ObjectId("5e5a0ae42ae06a1609a00b06"), "details" :{ "Name" :"John", "Age" :23 } }{ "_id" :ObjectId("5e5a0ae42ae06a1609a00b07"), "details" :{ "नाम" :"डेविड", "आयु" :21 } }{ "_id" :ObjectId ("5e5a0ae42ae06a1609a00b08"), "विवरण" :{ "नाम" :"डेविड", "आयु" :22 } }पूर्व>कुंजियाँ अज्ञात होने पर खोजने के लिए निम्नलिखित क्वेरी है -
> db.demo375.aggregate([... {"$addFields":{... "UnknownKeys":{ "$objectToArray":"$$ROOT" }... }},... { "$मैच":{ "UnknownKeys.v.Name":"David" }},... { "$project":{ "UnknownKeys":0 }}... ])यह निम्नलिखित आउटपुट देगा -
{ "_id" :ObjectId("5e5a0ae42ae06a1609a00b07"), "details" :{ "Name" :"David", "Age" :21 } }{ "_id" :ObjectId ("5e5a0ae42ae06a1609a00b08"), "details" :{ "नाम" :"डेविड", "आयु" :22 } }