Database

[{"subject":{"subCode":"CSCI321","subTitle":"Final Year Project","credit":6,"type":"Core","assessments":[{"assessNum":1,"weight":30,"assessType":"Presentation","description":"Prototype demonstration"},{"assignNum":2,"weight":70,"assessType":"Implementation and Presentation","description":"Final product Presentation and assessment of product implementation by panel of project supervisors"}]}},{"subject":{"subCode":"CSCI203","subTitle":"Algorithm and Data Structures","credit":3,"type":"Core","prerequisite":["csci103"]}},{"subject":{"subCode":"CSCI203","subTitle":"Algorithm and Data Structures","credit":3,"type":"Core","prerequisite":[]}},{"subject":{"subCode":"CSCI203","subTitle":"Algorithm and Data Structures","credit":3,"type":"Core",}}]

Query

db.collection.aggregate([{$group:{_id:{$cond:[{$or:[{$lte:["$subject.prerequisite",null]},{$eq:[{$size:{$ifNull:["$subject.prerequisite",[]]}},0]}]},"noPrerequisite","havePrerequisite"]},count:{$sum:1}}}])

Result