Database
db={"choices":[{_id:"1",pollId:"poll1",choice:"red"},{_id:"2",pollId:"poll1",choice:"blue"},{_id:"3",pollId:"poll1",choice:"green"}],"votes":[{_id:"a",choiceId:"3",userId:"user1"},{_id:"b",choiceId:"3",userId:"user2"},{_id:"c",choiceId:"1",userId:"user3"}]}
Query
db.choices.aggregate([{"$match":{"pollId":"poll1"}},{"$lookup":{"from":"votes","localField":"_id","foreignField":"choiceId","as":"choiceData"}},{"$project":{"_id":0,"choice":1,"choiceId":"$_id","votes":{"$size":"$choiceData"}}}])