आप MongoDB में इंटरनल ऐरे साइज के लिए $size ऑपरेटर का उपयोग कर सकते हैं। सिंटैक्स इस प्रकार है:
db.internalArraySizeDemo.aggregate(
[
{
$group: {
_id:yourObjectIdValue,
anyFieldName: {$first: {$size: "$yourArrayName" }}
}
}
]
);
उपरोक्त सिंटैक्स को समझने के लिए, आइए कुछ डॉक्यूमेंट्स के साथ एक कलेक्शन बनाएं। डॉक्यूमेंट्स के साथ कलेक्शन बनाने की क्वेरी इस प्रकार है:
>db.internalArraySizeDemo.insertOne({"EmployeeName":"Mike","EmployeeTechnology":["Java Web Development","Python Web Development"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c6eff586fd07954a48906b2") }
> db.internalArraySizeDemo.insertOne({"EmployeeName":"Sam","EmployeeTechnology":["C with Graphics","Game Development with C++ Language","MatLab"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c6effcd6fd07954a48906b3") }
find() मेथड की मदद से कलेक्शन से सभी डॉक्यूमेंट्स प्रदर्शित करें। क्वेरी इस प्रकार है:
> db.internalArraySizeDemo.find().pretty();
निम्नलिखित आउटपुट है:
{ "_id" : ObjectId("5c6eff586fd07954a48906b2"), "EmployeeName" : "Mike", "EmployeeTechnology" : [ "Java Web Development", "Python Web Development" ] }
{ "_id" : ObjectId("5c6effcd6fd07954a48906b3"), "EmployeeName" : "Sam", "EmployeeTechnology" : [ "C with Graphics", "Game Development with C++ Language", "MatLab" ] }
यहां $size ऑपरेटर की मदद से इंटरनल ऐरे साइज प्राप्त करने की क्वेरी है:
> db.internalArraySizeDemo.aggregate(
[
{
$group: {
_id:ObjectId("5c6eff586fd07954a48906b2"),
EmployeeTechnology_count: {$first: {$size: "$EmployeeTechnology" }}
}
}
]
);
निम्नलिखित आउटपुट है:
{ "_id" : ObjectId("5c6eff586fd07954a48906b2"), "EmployeeTechnology_count" : 2 }