Database
[{medicationDetails:{category:"Asthma",subCategory:""}},{medicationDetails:{category:"Diabetes",subCategory:"Oral"}},{medicationDetails:{category:"Asthma",subCategory:""}},{medicationDetails:{category:"Diabetes",subCategory:"Insulin"}}]
Query
db.collection.aggregate([{$project:{key:{$cond:[{$eq:["$medicationDetails.subCategory",""]},"$medicationDetails.category","$medicationDetails.subCategory"]}}},{$group:{_id:"$key",count:{$sum:1}}},{$group:{_id:0,medicationDetails:{$push:{name:"$_id",count:"$count"}}}},{$unset:"_id"}])