ran*_*its 0 javascript mongodb
我有一个MongoDB文档,如下所示:
"sport": "NFL",
"team_id": 5,
"week_num": 6,
"meta": {
.... more data ....,
"season_year": 2013
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是将season_yearkey/val 复制到"顶级"文档,同时将其嵌入到meta散列中.所以它会重复,最终结果如下:
"sport": "NFL",
"team_id": 5,
"week_num": 6,
"season_year": 2013,
"meta": {
.... more data ....,
"season_year": 2013
}
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法来更新我的集合中的所有文档与上述逻辑?我在用MongoDB shell version: 2.4.3
问题是在更新期间,您无法引用要更新的文档.所以你无法在一个查询中实现你想要的.
您需要遍历所有文档并逐个保存:
db.yourCollection.find({}).forEach(function(doc) {
doc.season_year = doc.meta.season_year;
db.yourCollection.save(doc);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2509 次 |
| 最近记录: |