如何重命名 MongoDB 中所有文档的字段?
为所有文档重命名字段的语法如下。在这里,我们使用了$renameL
db.yourCollectionName.update({}, {$rename:{"yourOldFieldName":"yourNewFieldName"}}, false, true);
为了理解这个概念,让我们用文档创建一个集合。使用文档创建集合的查询如下-
> db.renameFieldDemo.insertOne({"StudentName":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5c7ee6c7559dd2396bcfbfbb") } > db.renameFieldDemo.insertOne({"StudentName":"Carol"}); { "acknowledged" : true, "insertedId" : ObjectId("5c7ee6cb559dd2396bcfbfbc") } > db.renameFieldDemo.insertOne({"StudentName":"Bob"}); { "acknowledged" : true, "insertedId" : ObjectId("5c7ee6cf559dd2396bcfbfbd") } > db.renameFieldDemo.insertOne({"StudentName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5c7ee6d3559dd2396bcfbfbe") } > db.renameFieldDemo.insertOne({"StudentName":"Maxwell"}); { "acknowledged" : true, "insertedId" : ObjectId("5c7ee6d8559dd2396bcfbfbf") }
在find()方法的帮助下显示集合中的所有文档。查询如下-
> db.renameFieldDemo.find().pretty();
以下是输出-
{ "_id" : ObjectId("5c7ee6c7559dd2396bcfbfbb"), "StudentName" : "John" } { "_id" : ObjectId("5c7ee6cb559dd2396bcfbfbc"), "StudentName" : "Carol" } { "_id" : ObjectId("5c7ee6cf559dd2396bcfbfbd"), "StudentName" : "Bob" } { "_id" : ObjectId("5c7ee6d3559dd2396bcfbfbe"), "StudentName" : "David" } { "_id" : ObjectId("5c7ee6d8559dd2396bcfbfbf"), "StudentName" : "Maxwell" }
这是将所有文档的字段“StudentName”重命名为“StudentFirstName”的查询-
> db.renameFieldDemo.update({}, {$rename:{"StudentName":"StudentFirstName"}}, false, true); WriteResult({ "nMatched" : 5, "nUpserted" : 0, "nModified" : 5 })
让我们检查一个集合中的所有文档。查询如下
> db.renameFieldDemo.find().pretty();
以下是输出-
{ "_id" : ObjectId("5c7ee6c7559dd2396bcfbfbb"), "StudentFirstName" : "John" } { "_id" : ObjectId("5c7ee6cb559dd2396bcfbfbc"), "StudentFirstName" : "Carol" } { "_id" : ObjectId("5c7ee6cf559dd2396bcfbfbd"), "StudentFirstName" : "Bob" } { "_id" : ObjectId("5c7ee6d3559dd2396bcfbfbe"), "StudentFirstName" : "David" } { "_id" : ObjectId("5c7ee6d8559dd2396bcfbfbf"), "StudentFirstName" : "Maxwell" }
查看示例输出,“StudentName”已重命名为“StudentFirstName”。