Để đếm số mục mảng trong tài liệu, hãy sử dụng $ size trong MongoDB. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.demo703.insertOne({"ListOfSubject":["MySQL","MongoDB"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ebaf551299a9f98c93b4")
}
> db.demo703.insertOne({"ListOfSubject":["Java"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ebb5551299a9f98c93b5")
}
> db.demo703.insertOne({"ListOfSubject":["C","C++","Python"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ebbf551299a9f98c93b6")
} Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -
> db.demo703.find();
Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5ea6ebaf551299a9f98c93b4"), "ListOfSubject" : [ "MySQL", "MongoDB" ] }
{ "_id" : ObjectId("5ea6ebb5551299a9f98c93b5"), "ListOfSubject" : [ "Java" ] }
{ "_id" : ObjectId("5ea6ebbf551299a9f98c93b6"), "ListOfSubject" : [ "C", "C++", "Python" ] } Sau đây là truy vấn để đếm số lượng mục mảng -
>db.demo703.aggregate({$project:{NumberOfItemsInEachArray:{$size:"$ListOfSubject"}}}).pretty(); Điều này sẽ tạo ra kết quả sau -
{
"_id" : ObjectId("5ea6ebaf551299a9f98c93b4"),
"NumberOfItemsInEachArray" : 2
}
{
"_id" : ObjectId("5ea6ebb5551299a9f98c93b5"),
"NumberOfItemsInEachArray" : 1
}
{
"_id" : ObjectId("5ea6ebbf551299a9f98c93b6"),
"NumberOfItemsInEachArray" : 3
}