十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
MongoDB中的$forEach操作符用于遍历数组,并对数组中的每个元素执行指定的操作,它通常与$update操作一起使用,以便在更新文档时对数组中的每个元素执行操作。

创新互联公司主营丁青网站建设的网络公司,主营网站建设方案,APP应用开发,丁青h5微信小程序开发搭建,丁青网站营销推广欢迎丁青等地区企业咨询
以下是一个简单的示例:
假设我们有一个名为students的集合,其中包含以下文档:
{
"_id": 1,
"name": "张三",
"scores": [80, 90, 85]
},
{
"_id": 2,
"name": "李四",
"scores": [70, 60, 75]
}
现在,我们想要将每个学生的分数提高10分,我们可以使用$forEach和$update操作来实现这个目标:
db.students.updateMany(
{},
[
{
"$set": {
"scores": {
"$map": {
"input": "$scores",
"as": "score",
"in": {
"$add": ["$$score", 10]
}
}
}
}
}
]
)
在这个示例中,我们首先使用$updateMany操作来匹配所有文档,我们使用$set操作来更新scores字段,接下来,我们使用$map操作符来遍历scores数组,并为每个元素应用一个表达式,在这个表达式中,我们使用$add操作符将当前分数($$score)加上10。
执行上述代码后,students集合中的文档将更新为:
{
"_id": 1,
"name": "张三",
"scores": [90, 100, 95]
},
{
"_id": 2,
"name": "李四",
"scores": [80, 70, 85]
}