इसके लिए, कुल () के साथ $project का उपयोग करें। एकत्रीकरण में $प्रोजेक्ट अनुरोधित फ़ील्ड वाले दस्तावेज़ों के साथ पाइपलाइन में अगले चरण तक जाता है।
आइए दस्तावेजों के साथ एक संग्रह बनाएं -
> db.demo762.insertOne({... "_id" :{... "userId":101,... "userName":"Chris"...},... "countryName" :"अमेरिका",... "विवरण" :[... {... "नाम" :"रॉबर्ट",... "नियत तारीख" :"2020-04-10"… },...... {... "नाम" :"रॉबर्ट",... "ड्यूडेट" :"2020-04-09"...},... {... "नाम" :"रॉबर्ट", ... "ड्यूडेट":"2020-03-06"... }... ]... }…); :101, "उपयोगकर्ता नाम" :"क्रिस" }}
संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -
> db.demo762.find();
यह निम्नलिखित आउटपुट देगा -
{ "_id" :{ "userId" :101, "userName" :"Chris" }, "countryName" :"US", "details" :[ { "Name" :"Robert", "DueDate" :"2020-04-10"}, {"नाम":"रॉबर्ट", "ड्यूडेट":"2020-04-09"}, {"नाम":"रॉबर्ट", "ड्यूडेट":"2020-03-06 " } ] }
MongoDB एकत्रीकरण और प्रक्षेपण के लिए निम्नलिखित क्वेरी है -
> db.demo762.aggregate([... {"$match":{... "_id":{ "$eq":{userId:101,userName:"Chris" }}... } },... {"$अनविंड":"$details" },... { "$सॉर्ट":{ "details.DueDate":1 }},... { "$group":{... "_id":"$_id",... "details":{ "$push":"$details" },... "countryName":{ "$first":"$countryName" }... } },... { "$प्रोजेक्ट":{ "विवरण":{ "$स्लाइस":["$विवरण", 2] } , "देश का नाम":1 }}... ]).सुंदर ();पूर्व>यह निम्नलिखित आउटपुट देगा -
{ "_id" :{ "userId" :101, "userName" :"Chris" }, "countryName" :"US", "details" :[ { "Name" :"Robert", "DueDate" :"2020-03-06" }, { "नाम" :"रॉबर्ट", "ड्यूडेट" :"2020-04-09" } ]}