Database
db={"things":[{_id:1,users:[{userId:1,role:"creator"},{userId:2,role:"spectator"},{userId:3,role:"left"}],nbMax:2},{_id:2,users:[{userId:2,role:"creator"},{userId:1,role:"spectator"},{userId:3,role:"left"}],nbMax:3}]}
Query
db.things.aggregate([{"$match":{_id:1}},{"$unwind":"$users"},{"$match":{"users.role":{$in:["creator","spectator"]}}},{"$group":{"_id":1,"count":{"$sum":1}}}])