【发布时间】:2014-10-31 23:59:18
【问题描述】:
来自 http://docs.mongodb.org/manual/reference/operator/update/positional/ 的 MongoDB 文档
可以使用$ 运算符来更新内部字段,例如给定的示例
使用位置$运算符更新嵌入文档中std字段的值,等级为85:
db.students.update( { _id: 4, "grades.grade": 85 }, { $set: { "grades.$.std" : 6 } } )有人可以解释一下$ 是如何发挥作用的吗?为什么 MongoDB 开发人员没有让它变得更简单,比如我们可以使用 "grades.grade":85 查找文档并使用 "grades.std":6 进行更新?还是我遗漏了什么?
【问题讨论】: