-
$match
điều kiện của bạn -
$group
theo cấp và tạo mảng tài liệu gốc trong các giá trịvalues
, - xác định các trường bắt buộc và kiểm tra điều kiện đã tạo trường
isObtained
ifsport
làBadminton
thì đúng nếu không thì sai
db.students.aggregate([
{ $match: { school: "xyz" } },
{
$group: {
_id: "$grade",
values: {
$push: {
sport: "$sport",
language: "$language",
Hobbies: "$Hobbies",
isObtained: {
$cond: [{ $eq: ["$sport", "Badminton"] }, true, false]
}
}
}
}
}
])
Nếu bạn muốn sử dụng phương pháp tiếp cận động, hãy thử $mergeObjects
với $$ROOT
,