एकल क्वेरी में सॉर्टिंग और ग्रुपिंग के लिए, कुल ढांचे के साथ $group ऑपरेटर का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -
> db.sortAndGroupDemo.insertOne({ Price :40, Product: 10 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bc78f00858fb12e907") } > db.sortAndGroupDemo.insertOne({ Price :100, Product: 10 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bc78f00858fb12e908") } > db.sortAndGroupDemo.insertOne({ Price :90, Product: 20 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bc78f00858fb12e909") } > db.sortAndGroupDemo.insertOne({ Price :200, Product: 10 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bc78f00858fb12e90a") } > db.sortAndGroupDemo.insertOne({ Price :70, Product: 20 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bc78f00858fb12e90b") } > db.sortAndGroupDemo.insertOne({ Price :70, Product: 30 }); { "acknowledged" : true, "insertedId" : ObjectId("5ce8f2bd78f00858fb12e90c") }
खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -
> db.sortAndGroupDemo.find().pretty();
यह निम्नलिखित आउटपुट देगा -
{ "_id" : ObjectId("5ce8f2bc78f00858fb12e907"), "Price" : 40, "Product" : 10 } { "_id" : ObjectId("5ce8f2bc78f00858fb12e908"), "Price" : 100, "Product" : 10 } { "_id" : ObjectId("5ce8f2bc78f00858fb12e909"), "Price" : 90, "Product" : 20 } { "_id" : ObjectId("5ce8f2bc78f00858fb12e90a"), "Price" : 200, "Product" : 10 } { "_id" : ObjectId("5ce8f2bc78f00858fb12e90b"), "Price" : 70, "Product" : 20 } { "_id" : ObjectId("5ce8f2bd78f00858fb12e90c"), "Price" : 70, "Product" : 30 }
एक MongoDB एग्रीगेशन क्वेरी में सॉर्ट और ग्रुप करने के लिए क्वेरी निम्नलिखित है -
> db.sortAndGroupDemo.aggregate( [ { "$group": { "_id": "$Product" }}, { "$sort" : { "Price": 1 }}, { "$project":{"_id":1 }} ] );
यह निम्नलिखित आउटपुट देगा -
{ "_id" : 30 } { "_id" : 20 } { "_id" : 10 }