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

MongoDB Aggregate का उपयोग करके ऐरे में पहला तत्व कैसे प्राप्त करें और वापस करें?


MongoDB Aggregate के साथ ऐरे का पहला तत्व प्राप्त करना

ऐरे में पहला तत्व प्राप्त करने के लिए $unwind ऑपरेटर का उपयोग $project के साथ करें। आइए दस्तावेज़ों के साथ एक कलेक्शन बनाते हैं। निम्नलिखित क्वेरी है:

>db.getFirstElementInArrayDemo.insertOne({"StudentName":"John","StudentSubject":["MongoDB","Python","MySQL"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c9c41292d6669774125244e") } 
>db.getFirstElementInArrayDemo.insertOne({"StudentName":"Chris","StudentSubject":["Java","C"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c9c413f2d6669774125244f") } 
>db.getFirstElementInArrayDemo.insertOne({"StudentName":"Robert","StudentSubject":["C++","Ruby"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c9c41532d66697741252450") }

find() मेथड से सभी दस्तावेज़ प्रदर्शित करना

> db.getFirstElementInArrayDemo.find().pretty();

यह निम्नलिखित आउटपुट देगा:

{ "_id" : ObjectId("5c9c41292d6669774125244e"), "StudentName" : "John", "StudentSubject" : [ "MongoDB", "Python", "MySQL" ] } 
{ "_id" : ObjectId("5c9c413f2d6669774125244f"), "StudentName" : "Chris", "StudentSubject" : [ "Java", "C" ] } 
{ "_id" : ObjectId("5c9c41532d66697741252450"), "StudentName" : "Robert", "StudentSubject" : [ "C++", "Ruby" ] }

Aggregate का उपयोग करके ऐरे में पहला तत्व प्राप्त करने का क्वेरी

> db.getFirstElementInArrayDemo.aggregate([ 
    {$unwind:"$StudentSubject"}, 
    {$group:{"_id":"$_id","FirstElement":{$first:"$StudentSubject"}}}, 
    {$project:{"_id":0,"FirstElement":1}} 
]);

यह निम्नलिखित आउटपुट देगा:

{ "FirstElement" : "Java" } 
{ "FirstElement" : "C++" } 
{ "FirstElement" : "MongoDB" }

वैकल्पिक: find() में $slice ऑपरेटर का उपयोग करके पहला तत्व प्राप्त करना

> db.getFirstElementInArrayDemo.find({},{ "StudentSubject":{$slice:1} });

यह निम्नलिखित आउटपुट देगा:

{ "_id" : ObjectId("5c9c41292d6669774125244e"), "StudentName" : "John", "StudentSubject" : [ "MongoDB" ] } 
{ "_id" : ObjectId("5c9c413f2d6669774125244f"), "StudentName" : "Chris", "StudentSubject" : [ "Java" ] } 
{ "_id" : ObjectId("5c9c41532d66697741252450"), "StudentName" : "Robert", "StudentSubject" : [ "C++" ] }
  1. - MongoDB में $group ऑपरेशन में सॉर्ट करके केवल पहले दो फील्ड प्राप्त करें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo576.insertOne({id:101,Name:Chris,Marks:45}) { acknowledged : true, insertedId : ObjectId(5e916c3b581e9acd78b427fa) } > db.demo576.insertOne({id:101,Name:John,Marks:55}) { acknowledged : true, insertedId : ObjectId(5e916c43581e9acd78b427fb)

  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. - PHP में एरे के पहले एलिमेंट कैसे प्राप्त करें?

    PHP में एरे के पहले एलिमेंट को प्राप्त करने के लिए, कोड इस प्रकार है: उदाहरण: डायरेक्ट की एक्सेस 125 ); echo Array value ...\n; echo Value 1 = . $arr[p], \n; ?> आउटपुट Array value ... Value 1 = 150 उदाहरण: reset() फ़ंक्शन 125 ); echo Value 1 = . reset($arr); ?> आउटपुट Value 1 = 150