Database
[{"_id":1,"stock_item":"almonds",warehouse:"B","instock":120},{"_id":2,"stock_item":"pecans",warehouse:"A","instock":80},{"_id":3,"stock_item":"almonds",warehouse:"B","instock":60},{"_id":4,"stock_item":"cookies",warehouse:"B","instock":40},{"_id":5,"stock_item":"cookies",warehouse:"A","instock":80}]
Query
db.collection.aggregate([{$match:{stock_item:"almonds"}},{$limit:1},{$lookup:{from:"collection",let:{si:"$stock_item",w:"$warehouse"},pipeline:[{$match:{$expr:{$or:[{$eq:["$$si","$stock_item"]},{$eq:["$$w","$warehouse"]}]}}}],as:"documents"}},{$unwind:"$documents"},{$replaceRoot:{newRoot:"$documents"}}])