Database

db={numbersData:[{"_id":ObjectId("61f2b5923327b3f6f4dad27e"),"value":1.0},/** 2*/{"_id":ObjectId("61f2b5923327b3f6f4dad27f"),"value":2.0},/** 3*/{"_id":ObjectId("61f2b5923327b3f6f4dad280"),"value":3.0},/** 4*/{"_id":ObjectId("61f2b5923327b3f6f4dad281"),"value":4.0}],assignedData:[{"_id":ObjectId("61f2b5e43327b3f6f4dad282"),"name":"john","assigned":[1.0,4.0]}]}

Query

db.assignedData.aggregate([{/**i only want to get single doc from assigned data*so using this match*/$match:{_id:ObjectId("61f2b5e43327b3f6f4dad282")},},{$lookup:{from:"numbersData",let:{aArr:"$assigned"},pipeline:[{$match:{$expr:{$not:{$in:["$value","$$aArr"]}}}}],as:"matchData"}}])

Result