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

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: { $size: '$Subject' } } }
])

परिणाम

{ "_id" : ObjectId("5eab094d43417811278f588a"), "count" : 2 }
{ "_id" : ObjectId("5eab095243417811278f588b"), "count" : 1 }
{ "_id" : ObjectId("5eab095f43417811278f588c"), "count" : 3 }

$size केवल ऐरे के साथ काम करता है; गैर-ऐरे फ़ील्ड के लिए यह त्रुटि देता है। सुरक्षा के लिए $cond जोड़ें।

  1. - MongoDB में एम्बेडेड ऐरे से विशिष्ट एलिमेंट्स कैसे प्राप्त करें?

    विशिष्ट एलिमेंट्स प्राप्त करने के लिए डॉट नोटेशन के साथ $match का उपयोग करें। नमूना डेटा बनाना (एम्बेडेड ऐरे) db.demo641.insert( { ProductId:101, ProductInformation: [ { ProductName:Product-1, ProductPrice:1000 }, { ProductName:Product-2, ProductPrice:500 }, { ProductName:Product-3

  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 में ऐरे के अंदर विशिष्ट फ़ील्ड वैल्यू के आधार पर डॉक्यूमेंट काउंट करना

    एम्बेडेड ऐरे में किसी विशिष्ट फ़ील्ड वैल्यू की घटनाओं को गिनने के लिए $unwind, $match और $group का उपयोग करें। डेमो डेटा > db.demo726.insertOne({ id:101, details: [ { Name:Chris }, { Name:Chris }, { Name:Bob } ] }); क्वेरी db.demo726.aggregate([ { $unwind