Database
[{"gave_like":1,"received_like":2},{"gave_like":2,"received_like":1},{"gave_like":1,"received_like":3},{"gave_like":3,"received_like":1},{"gave_like":3,"received_like":2},]
Query
db.collection.aggregate([{"$match":{"gave_like":1}},{$lookup:{let:{"gave":"$received_like"},from:"collection",pipeline:[{$match:{$expr:{$and:[{$eq:["$gave_like","$$gave"]},{$eq:["$received_like",1]}]}}}],as:"match"}},{$unwind:{path:"$match",preserveNullAndEmptyArrays:false}}])