Database
[{"_id":"1","name":"John Doe","age":25,"address":{"street":"123 Main St","city":"New York","state":"NY","zip":"10001"},"images":[{"url":"http://www.example.com/image1.jpg","caption":"Image 1","type":"jpg"},{"url":"http://www.example.com/image2.jpg","caption":"Image 2","type":"png"},{"url":"http://www.example.com/image3.jpg","caption":"Image 3","type":"svg"},{"url":"http://www.example.com/image4.jpg","caption":"Image 4","type":"jpg"}]},{"_id":"2","name":"Jack","age":22,"address":{"street":"132 lake","city":"New York","state":"NY","zip":"10001"},"images":[{"url":"http://www.example.com/image212.jpg","caption":"Image 212","type":"png"},{"url":"http://www.example.com/image34.jpg","caption":"Image 34","type":"svg"}]},{"_id":"3","name":"Random name","age":27,"address":{"street":"Lajpat nagar","city":"New Delhi","state":"Delhi","zip":"121002"},"images":[{"url":"http://www.example.com/image5.jpg","caption":"Image 5","type":"jpg"},{"url":"http://www.example.com/image7.jpg","caption":"Image 7","type":"png"},{"url":"http://www.example.com/image12.jpg","caption":"Image 12","type":"svg"},{"url":"http://www.example.com/image8.jpg","caption":"Image 8","type":"jpg"}]}]
Query
db.collection.aggregate([{"$unwind":"$images"},{"$match":{"images.type":"jpg"}},{"$group":{"_id":"$_id","total":{"$sum":1}}}])