इसके लिए, बस MongoDB $group का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -
> db.demo16.insertOne({ ... "StudentName" : "Chris", ... "StudentSection" : "A", ... "StudentAge" : 23, ... "StudentMarks" : 47 ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e13827455d0fc6657d21f07") } > db.demo16.insertOne({ ... "StudentName" : "Bob", ... "StudentSection" : "B", ... "StudentAge" : 21, ... "StudentMarks" : 85 ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e13827555d0fc6657d21f08") } > db.demo16.insertOne( { ... "StudentName" : "Carol", ... "StudentSection" : "A", ... "StudentAge" : 26, ... "StudentMarks" : 97 ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e13827655d0fc6657d21f09") }
खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -
> db.demo16.find().pretty();
यह निम्नलिखित आउटपुट देगा -
{ "_id" : ObjectId("5e13827455d0fc6657d21f07"), "StudentName" : "Chris", "StudentSection" : "A", "StudentAge" : 23, "StudentMarks" : 47 } { "_id" : ObjectId("5e13827555d0fc6657d21f08"), "StudentName" : "Bob", "StudentSection" : "B", "StudentAge" : 21, "StudentMarks" : 85 } { "_id" : ObjectId("5e13827655d0fc6657d21f09"), "StudentName" : "Carol", "StudentSection" : "A", "StudentAge" : 26, "StudentMarks" : 97 }
समूह और अलग-अलग संचालन को एक साथ लागू करने की क्वेरी निम्नलिखित है -
> db.demo16.aggregate([{ ... $group : { ... _id : null, ... StudentName : { $addToSet : "$StudentName" }, ... StudentSection : { $addToSet : "$StudentSection" }, ... StudentMinimumAge : { $min : "$StudentAge" }, ... StudentMaximumAge : { $max : "$StudentAge" }, ... StudentMinimumMarks: { $min : "$StudentMarks" }, ... StudentMaximumMarks : { $max : "$StudentMarks" } ... } ... }]).pretty();
यह निम्नलिखित आउटपुट देगा -
{ "_id" : null, "StudentName" : [ "Carol", "Bob", "Chris" ], "StudentSection" : [ "B", "A" ], "StudentMinimumAge" : 21, "StudentMaximumAge" : 26, "StudentMinimumMarks" : 47, "StudentMaximumMarks" : 97 }