Database
db={"orders":[{"_id":ObjectId("62155381877d4300196008ef"),"shipping":{"mode":1},"products":[],"user":ObjectId("6186bd3315a342001bd84f42"),},{"_id":ObjectId("6215569b54cc7f0030c44e0f"),"shipping":{"mode":2},"user":ObjectId("6186bd3315a342001bd84f43"),"products":[{"id":"p123"}],}],"user":[{"_id":ObjectId("6186bd3315a342001bd84f43"),"shipping":{"mode":2},"name":"user100","purchase":[{"id":"123"},{"id":"hjhh"}],}]}
Query
db.orders.aggregate([{"$lookup":{"from":"user","localField":"user","foreignField":"_id","as":"user"}},{"$unwind":"$user"},{"$unwind":"$user.purchase"},{"$match":{"$and":[{"shipping.mode":{"$gt":0}},]}},{"$match":{"$or":[{"$and":[{"user.shipping.mode":{"$eq":2}},{"user.purchase.id":{"$eq":"123"}},{"$expr":{"$in":["p123","$products.id"]}}]},]}},])