Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB Aggregate में $match और $project Implement करना

$match documents को filter करके केवल matching documents को next pipeline stage में pass करता है।

$project requested fields के साथ documents को pipeline के next stage में pass करता है।

Collection बनाना

> db.demo545.insert({Name:"Chris",details:{SubjectScore1:56,SubjectScore2:56}})
WriteResult({ "nInserted" : 1 })
> db.demo545.insert({Name:"David",details:{SubjectScore1:78,SubjectScore2:78}})
WriteResult({ "nInserted" : 1 })

सभी Documents Display करना

> db.demo545.find();

Output:

{ "_id" : ObjectId("5e8e246e9e5f92834d7f05d5"), "Name" : "Chris", "details" : { "SubjectScore1" : 56, "SubjectScore2" : 56 } }
{ "_id" : ObjectId("5e8e24709e5f92834d7f05d6"), "Name" : "David", "details" : { "SubjectScore1" : 78, "SubjectScore2" : 78 } }

$match और $project Implement करने का Query

>db.demo545.aggregate([{$match:{}},{$project:{"_id":0,"details.SubjectScore1":1,out:"$details.SubjectScore2"}},{$group:{_id:"$out"}}])

Output:

{ "_id" : 78 }
{ "_id" : 56 }

व्याख्या: यहाँ $match: {} सभी documents pass करता है। $project में _id: 0 से _id exclude किया, details.SubjectScore1 include किया, और out field में SubjectScore2 copy किया। फिर $group ने out field द्वारा group किया।

  1. - MongoDB एग्रीगेशन: दस्तावेज और ऐरे एलिमेंट्स से औसत प्राप्त करें

    इसके लिए, $avg के साथ $group और aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo598.insertOne({ Information:Student, id:100, details:[ {Name:Chris,Marks:75}, {Name:Bob,Marks:55} ] }); { acknowledged : true, insertedId : ObjectId(5e9

  1. - MongoDB और Python

    MongoDB एक व्यापक रूप से उपयोग किया जाने वाला डॉक्यूमेंट डेटाबेस है जो NoSQL DB का एक रूप भी है। Python कुछ पायथन मॉड्यूल्स के माध्यम से MongoDB के साथ इंटरैक्ट कर सकता है और Mongo DB के अंदर डेटा बना और मैनिपुलेट कर सकता है। इस लेख में हम इसे करना सीखेंगे। लेकिन MongoDB आपके सिस्टम में पहले से उपल

  1. - MongoDB एग्रीगेशन और प्रोजेक्शन

    इसके लिए aggregate() के साथ $project का उपयोग करें। एग्रीगेशन में $project पाइपलाइन में अगले चरण के लिए अनुरोधित फील्ड्स के साथ डॉक्यूमेंट्स को पास करता है। आइए एक कलेक्शन बनाते हैं: > db.demo762.insertOne({ _id : { userId:101, userName:Chris }, countryName : US, details : [ { Name : Robert, Due