Database
db={"collectA":[{"_id":1,"conditionValue":"Working"},{"_id":2,"conditionValue":"Working"}],"collectB":[{"_id":1,"collectA_id":1,generated:new Date("2020-01-01T00:00:00Z"),finalValue:"Cost"},{"_id":2,"collectA_id":2,generated:new Date("2020-01-01T00:00:00Z"),finalValue:"No Cost"},{"_id":3,"collectA_id":1,generated:new Date("2020-02-02T00:00:00Z"),finalValue:"Cost"},{"_id":4,"collectA_id":1,generated:new Date("2020-03-03T00:00:00Z"),finalValue:"No Cost"}]}
Query
db.collectA.aggregate([{$match:{conditionValue:"Working"}},{"$lookup":{"from":"collectB","localField":"_id","foreignField":"collectA_id","as":"collectB"}},{$project:{"_id":1,count:{$size:{$filter:{input:"$collectB",cond:{$eq:["$$this.finalValue","Cost"]}}}},"collectB.generated":1,"collectB.finalValue":1}}])