Database

[{"_id":"1","age":30,"items":[{"id":"1","isSuccessful":true,"name":null},{"id":"2","isSuccessful":true,"name":null},{"id":"3","isSuccessful":true,"name":"Bob"},{"id":"4","isSuccessful":null,"name":"Todd"}]}]

Query

db.collection.aggregate([{$match:{_id:"1"}},{$unwind:"$items"},{$group:{_id:"_id",age:{$first:"$age"},totalIsSuccessful:{$sum:{$cond:[{"$eq":["$items.isSuccessful",true]},1,0]}},totalNotIsSuccessful:{$sum:{$cond:[{"$ne":["$items.isSuccessful",true]},1,0]}},totalSuccessfulNull:{$sum:{$cond:[{"$eq":["$items.isSuccessful",null]},1,0]}},totalNameNull:{$sum:{$cond:[{"$eq":["$items.name",null]},1,0]}}}}])

Result