【发布时间】:2018-08-29 04:10:21
【问题描述】:
我正在尝试在更新数组中的所有文档部分下的mongodb documentation 上实现为$[] 显示的示例
用以下文件收集学生2
{
"_id" : 1,
"grades" : [
{ "grade" : 80, "mean" : 75, "std" : 8 },
{ "grade" : 85, "mean" : 90, "std" : 6 },
{ "grade" : 85, "mean" : 85, "std" : 8 }
]
}
{
"_id" : 2,
"grades" : [
{ "grade" : 90, "mean" : 75, "std" : 8 },
{ "grade" : 87, "mean" : 90, "std" : 5 },
{ "grade" : 85, "mean" : 85, "std" : 6 }
]
}
我正在使用 shell 执行以下查询(与示例中显示的查询相同)
db.students2.update(
{ },
{ $inc: { "grades.$[].std" : -2 } },
{ multi: true }
)
我遇到的错误
不能使用部分(grades of grades.$[].std)遍历元素({grades: [ {grade: 80, mean: 75, std: 8 }, {grade: 85, mean: 90,标准:6},{等级:85,平均:85,标准:8}]})
- Mongo 版本:3.6.3
任何建议将不胜感激。
【问题讨论】:
-
在运行更新之前尝试设置setFeatureCompatibility。
-
@Veeram 谢谢。这行得通!
标签: mongodb mongodb-query