首页 > 解决方案 > MongoDB - 重命名与正则表达式匹配的列名

问题描述

我在一个集合中有一个列名,它意外地有两个可变字节,导致相同数据的几列而不是一列:

{"_id":"5f9c48a311a707ea4af164f0", "rx packet value (location AD)":"0xdeadbeef" }
{"_id":"5f9c48a311a707ea4af164f1", "rx packet value (location BD)":"0xdeadbabe" }
{"_id":"5f9c48a311a707ea4af164f2", "rx packet value (location 0D)":"0xcafecafe" }
{"_id":"5f9c48a311a707ea4af164f3", "rx packet value (location FD)":"0xbabababa" }

我想用一个通用名称重命名所有这些列,如下所示:

db.my_collection.updateMany( {}, {$rename:{/column_name(variable_bytes)/:"column_name"}}, false, true)'

$rename运算符采用列名,而不是正则表达式。

如何实现?

标签: mongodb

解决方案


推荐阅读