-
$map
để lặp lại vòng lặp củaall_users
mảng -
$cond
kiểm tra điều kiện nếuid
nằm trong những người dùng được chọnid
sau đó trả lại "có" nếu không "không" trongselected
lĩnh vực -
$mergeObject
để hợp nhất đối tượng người dùng hiện tại vớiselected
ở trên lĩnh vực
db.collection.aggregate([
{
$project: {
all_users: {
$map: {
input: "$all_users",
in: {
$mergeObjects: [
"$$this",
{
selected: {
$cond: [
{ $in: ["$$this.id", "$selected_users.id"] },
"yes",
"no"
]
}
}
]
}
}
}
}
}
])