Vamos considerar seus
Pupils
coleção:Pupils
{
_id,
Marks(integer),
LatestMark(int)
}
Sugiro adicionar a marca mais recente no documento do Aluno (como você pode ver no documento acima) e atualizá-la sempre que adicionar uma nova marca à coleção aninhada.
db.Pupils.find({ "LatestMark": {$gt : 15, $lt : 20}});
Além disso, você pode consultar a marca mais recente usando $onde , mas tenha cuidado porque: