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

MongoDB में सरणी के प्रत्येक तत्व को पुनरावृत्ति करके प्रिंट कर सकते हैं, लेकिन विशिष्ट तत्व नहीं प्राप्त कर सकते


विशिष्ट तत्व प्राप्त करने के लिए forEach() के साथ पुनरावृति करें। आइए एक कलेक्शन बनाते हैं:

> db.demo742.insertOne({ "userDetails": [ { "userName":"Robert", "CountryName":"UK" }, { "userName":"David", "CountryName":"AUS" } ]} ); { "acknowledged" : true, "insertedId" : ObjectId("5ead790b57bb72a10bcf0677") }

find() से सभी डॉक्यूमेंट्स देखें:

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

आउटपुट:

{ "_id" : ObjectId("5ead790b57bb72a10bcf0677"), "userDetails" : [ { "userName" : "Robert", "CountryName" : "UK" }, { "userName" : "David", "CountryName" : "AUS" } ] }

सरणी से तत्व प्राप्त करने के लिए क्वेरी (सभी अद्वितीय देश नाम एकत्र करें):

> var ListOfCountryName= {}; > db.demo742.find({}).forEach(function(doc) { ... doc.userDetails.forEach(function (d){ ... ListOfCountryName[d.CountryName] =d.CountryName; ... }); ... } ) > printjson(ListOfCountryName);

परिणाम:

{ "UK" : "UK", "AUS" : "AUS" }

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

    ऐरे एलिमेंट्स का औसत प्राप्त करने के लिए, $avg का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo584.insertOne({Marks:[75,50,85,60,80]}); { acknowledged : true, insertedId : ObjectId(5e91d827fd2d90c177b5bcc2) } find() मेथड की मदद से कलेक्शन के सभी दस्तावेज प्रदर्शित करें: >

  1. - MongoDB दस्तावेज़ों में विशिष्ट फ़ील्ड के ऐरे एलिमेंट्स काउंट करना

    किसी फ़ील्ड में ऐरे एलिमेंट्स की संख्या गिनने के लिए $size ऑपरेटर का उपयोग करें। डेमो डेटा > db.demo723.insertOne({Subject:[MySQL,MongoDB]}); > db.demo723.insertOne({Subject:[C]}); > db.demo723.insertOne({Subject:[C++,Java,Python]}); क्वेरी db.demo723.aggregate([ { $project: { count:

  1. - MongoDB में किसी फ़ील्ड के सभी मानों को विशिष्ट स्ट्रिंग से अपडेट करना

    कलेक्शन के सभी दस्तावेज़ों में किसी फ़ील्ड का मान बदलने के लिए update() के साथ multi: true (या नए वर्जन में updateMany()) का उपयोग करें। डेमो डेटा > db.demo720.insertOne({SubjectName:MySQL}); > db.demo720.insertOne({SubjectName:Java}); > db.demo720.insertOne({SubjectName:C}); > db.demo7