Database

db={"player":[{subject_id:23,service_id:1},{subject_id:76,service_id:9}],"service":[{subject_id:76,service_id:9},{subject_id:99,service_id:10}]}

Query

db.player.aggregate([{"$lookup":{"from":"service","localField":"subject_id","foreignField":"subject_id","as":"ps"}},{"$unwind":"$ps"},{"$match":{"$expr":{"$eq":["$service_id","$ps.service_id"]}}}])

Result