Mongoose filter on query

I've been playing with Mongodb for the past few months and have found it great...Im trying to cleanup some of the old code that was implemented in day one.

Current code:

Study.find(queryParams)
        .lean(true)
        .exec(function (err, studies) {...SOME LOGIC...}

Currently, we iterate through the studies and for each study we look at the subdocument questions to see if the userid matches, if its does then its shown back to the UI.

Is there is anyway this can be achieved using the find clause?

Parent Model:

    var ParentSchema = {
      name           : { type: String, required: true },
      project        : { type: ObjectId, required: true },
      questions      : { type: [Question], default: [] },
    }
   mongoose.createModel('Parent', ParentSchema);

Question:

var QuestionSchema = {
    userId: ObjectId,
    thumbnail: String
});
mongoose.createModel('Question', QuestionSchema);

So, the question is created and pushed to the parent.questions array. What I want is to return all questions where name = XYZ but questions is filtered by userId = ABC i.e. if questions doesn't contain the userId it should still return the parent. This is currently being by plan old JavaScript filter (Using NodeJS).

Any help is appreciated.

J