ในการนับจำนวนองค์ประกอบในอาร์เรย์ ให้ใช้กรอบงานรวม ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -
>db.countNumberOfElementsDemo.insertOne({"UserMessage":["Hi","Hello","Bye","Awesome"]}); { "acknowledged" : true, "insertedId" : ObjectId("5cef8ec2ef71edecf6a1f6a1") }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.countNumberOfElementsDemo.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5cef8ec2ef71edecf6a1f6a1"), "UserMessage" : [ "Hi", "Hello", "Bye", "Awesome" ] }
ต่อไปนี้เป็นแบบสอบถามเพื่อนับจำนวนองค์ประกอบในอาร์เรย์ -
> db.countNumberOfElementsDemo.aggregate({$project: { NumberOfElements: { $size:"$UserMessage" }}})
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5cef8ec2ef71edecf6a1f6a1"), "NumberOfElements" : 4 }