Database

[{id:1,name:"",values:{a:24,b:42}},{id:2,name:"",values:{a:43,b:53}},{id:3,name:"",values:{a:33,b:25}},{id:4,name:"",values:{a:24,b:42}}]

Query

db.collection.aggregate([{$sort:{id:1}},{$lookup:{from:"collection",let:{id:"$id"},pipeline:[{$sort:{id:1}},{$match:{$expr:{$gt:["$id","$$id"]}}},{$limit:10}],as:"bucket"}},{$replaceRoot:{newRoot:{$reduce:{input:"$bucket",initialValue:{a:"$values.a",b:"$values.b",data:[{_id:"$_id",id:"$id",name:"$name",values:"$values"}]},in:{a:{$add:["$$value.a",{$cond:[{$and:[{$lt:["$$value.a",100]},{$lt:["$$value.b",120]}]},"$$this.values.a",0]}]},b:{$add:["$$value.b",{$cond:[{$and:[{$lt:["$$value.a",100]},{$lt:["$$value.b",120]}]},"$$this.values.b",0]}]},data:{$concatArrays:["$$value.data",{$cond:[{$and:[{$lt:["$$value.a",100]},{$lt:["$$value.b",120]}]},["$$this"],[]]}]}}}}}},{$facet:{equals:[{$match:{a:100,b:120}}],threshold:[{$match:{a:{$gte:90,$lt:110},b:{$gte:110,$lt:130}}}]}},{$project:{result:{$cond:[{$gt:[{$size:"$equals"},0]},"$equals","$threshold"]}}},{$unwind:"$result"}])

Result