Database
db={"firstCollection":[{"JoinField":"this is my data"}],"secondCollection":[{"FirstField":"food","SecondField":"bar","Properties":{"JoinField":"this is my data"}},{"FirstField":"food","SecondField":"bar","Properties":{"JoinField":"this is my data"}}]}
Query
db.firstCollection.aggregate([{"$lookup":{from:"secondCollection",let:{jfield:"$JoinField"},pipeline:[{$match:{$expr:{$eq:["$$jfield","$Properties.JoinField"]}}},{$limit:1}],as:"secondCollection"}},{"$unwind":"$secondCollection"},{"$project":{"JoinField":1,firstField:"$secondCollection.FirstField",secondField:"$secondCollection.SecondField",}}])