MongoDB में फ़ील्ड प्रोजेक्ट करने के लिए, $project का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -
> db.demo439.insertOne( ... { ... "Name" : "Chris", ... "MarksInformation" : { ... "Marks1" : 67, ... "Marks2" :45, ... "Marks3" : 78 ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e77833abbc41e36cc3caeab") } > db.demo439.insertOne( ... { ... "Name" : "David", ... "MarksInformation" : { ... "Marks1" : 50, ... "Marks2" :57, ... "Marks3" : 68 ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e77833abbc41e36cc3caeac") } > db.demo439.insertOne( ... { ... "Name" : "Bob", ... "MarksInformation" : { ... "Score1" : 65, ... "Score2" :71, ... ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e77833bbbc41e36cc3caead") }
संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -
> db.demo439.find();
यह निम्नलिखित आउटपुट देगा -
{ "_id" : ObjectId("5e77833abbc41e36cc3caeab"), "Name" : "Chris", "MarksInformation" : { "Marks1" : 67, "Marks2" : 45, "Marks3" : 78 } } { "_id" : ObjectId("5e77833abbc41e36cc3caeac"), "Name" : "David", "MarksInformation" : { "Marks1" : 50, "Marks2" : 57, "Marks3" : 68 } } { "_id" : ObjectId("5e77833bbbc41e36cc3caead"), "Name" : "Bob", "MarksInformation" : { "Score1" : 65, "Score2" : 71 } }
प्रोजेक्ट फ़ील्ड के लिए क्वेरी निम्नलिखित है -
> db.demo439.aggregate({ ... $project: { ... "Name" : 1, ... "Marks1": { $cond: [ { $eq:[ { $ifNull: [ "$MarksInformation.Marks1", 0 ] }, 0 ] },{ $ifNull: [ "$MarksInformation.Score1", 0 ] }, "$MarksInformation.Marks1" ] }, ... "Marks2": { $cond: [ { $eq:[ { $ifNull: [ "$MarksInformation.Marks2", 0 ] }, 0 ] }, { $ifNull: [ "$MarksInformation.Score2", 0 ] }, "$MarksInformation.Marks2" ] }, ... "Marks3": { $cond: [ { $eq:[ { $ifNull: [ "$MarksInformation.Marks3", 0] }, 0 ] }, { $ifNull: [ "$MarksInformation.Score3", 0 ] }, "$MarksInformation.Marks3" ] } ... }})
यह निम्नलिखित आउटपुट देगा -
{ "_id" : ObjectId("5e77833abbc41e36cc3caeab"), "Name" : "Chris", "Marks1" : 67, "Marks2" : 45, "Marks3" : 78 } { "_id" : ObjectId("5e77833abbc41e36cc3caeac"), "Name" : "David", "Marks1" : 50, "Marks2" : 57, "Marks3" : 68 } { "_id" : ObjectId("5e77833bbbc41e36cc3caead"), "Name" : "Bob", "Marks1" : 65, "Marks2" : 71, "Marks3" : 0 }