mongo批量修改集合名将短横改成下划线
在MongoDB中,你可以使用以下代码批量修改集合名,将短横线改成下划线:
db.getCollectionNames().forEach(function(name) {
if (name.includes("-")) {
var newName = name.replace("-", "_");
db.getCollection(name).renameCollection(newName);
print("Collection " + name + " renamed to " + newName);
}
});
这段代码会遍历所有的集合名称,如果集合名称中包含短横线,就将短横线替换为下划线,并将集合重命名为新的名称。在每次重命名时,还会打印出重命名前后的集合名称。
请注意,这段代码只会修改集合的名称,不会修改集合内的文档。如果你希望修改文档中的某个字段,以将短横线改成下划线,你需要使用更新操作来实现。例如:
db.collection.updateMany({}, { $rename: { "field-with-dash": "field_with_underscore" } });
这段代码会将集合中的所有文档的 "field-with-dash" 字段重命名为 "field_with_underscore"。你需要将 collection 替换为你的集合名称,并根据需要修改字段的名称
原文地址: https://www.cveoy.top/t/topic/h2AY 著作权归作者所有。请勿转载和采集!