To count items in array, use length. Let us create a collection with documents −
> db.demo440.insertOne( ... { ... "Name":"Chris", ... "ListOfFriends":["John","Sam","Mike"] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e78c63cbbc41e36cc3caeb5") } > > db.demo440.insertOne( ... { ... "Name":"David", ... "ListOfFriends":["Mike","Bob","Carol"] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e78c63cbbc41e36cc3caeb6") }
Display all documents from a collection with the help of find() method −
> db.demo440.find();
This will produce the following output −
{ "_id" : ObjectId("5e78c63cbbc41e36cc3caeb5"), "Name" : "Chris", "ListOfFriends" : [ "John", "Sam", "Mike" ] } { "_id" : ObjectId("5e78c63cbbc41e36cc3caeb6"), "Name" : "David", "ListOfFriends" : [ "Mike", "Bob", "Carol" ] }
Following is the query to count items in array −
>db.demo440.findOne({'Name':'David'}).ListOfFriends.length;
This will produce the following output −
3