I\'m fairly new to MongoDB and need help doing a select, or perhaps some sort of left join, on one collection based on another collection\'s data.
I have two collections
You can try below aggregation query.
db.animals.aggregate([ [
{
"$lookup": {
"from": "meals",
"localField": "lastMeal",
"foreignField": "id",
"as": "last_meal"
}
},
{
"$unwind": "$last_meal"
},
{
"$match": {
"last_meal.created": {
"$gt": 20171001
}
}
}
])
More info here.
You can use $project
with exclusion after $match
stage to format the response to exclude joined fields. Something like { $project: {"last_meal":0} }