如何在MongoDB Shell的一个函数内执行多次updateMany字段重命名操作
实现方案
完全可以实现,MongoDB的$rename更新操作符本身就支持在单次操作中同时定义多组字段重命名规则,不需要多次调用updateMany()方法,优化后的代码如下:
db.Hours.updateMany( {}, // 匹配集合内所有文档 { "$rename": { "season": "Season", "yr": "Year", "cnt": "TotalRiders" } } )
- 这种写法只需要对集合做1次全量扫描即可完成所有重命名操作,相比分3次调用的写法执行效率更高
- 注意如果新字段名在文档中已存在,原已有字段会被重命名后的字段覆盖,操作前建议先做好数据备份
内容的提问来源于stack exchange,提问作者BoogieMan
相关产品推荐
相关产品推荐

