आप $filter
का इस्तेमाल कर सकते हैं
pets
. पर सरणी एकत्रीकरण ऑपरेटर सरणी जो आपके $lookup
. द्वारा निर्मित है मंच।
1 वर्ष से अधिक उम्र के पालतू जानवरों के उत्पादन के लिए उपयोग करें
db.users.aggregate([
{
$lookup:
{
from: "pets",
localField: "id",
foreignField: "owner",
as: "pets"
}
},
{
$project:
{
name: 1,
pets:
{
$filter:
{
input: "$pets",
as: "pet",
cond: { $gte: [ "$$pet.age", 1 ] }
}
}
}
}
]);
सबसे पुराने पालतू जानवरों को आउटपुट करने के लिए बस cond
. को बदलें $filter
. का क्षेत्र पिछले एकत्रीकरण पाइपलाइन में ऑपरेटर के साथ
cond: { $eq: [ "$$pet.age", { $max: "$pets.age" } ] }