javascript - 如何重命名mongodb中整个集合中的一个元素名称

标签 javascript node.js mongodb mongoose

我有一个像这样的 Mongoose 数据集:

{
    "_id" : ObjectId("5a8a91baec129c86c6a30cb6"),
    "sweet" : "APPLE",
    "price" : 27,
    "sellingprice" : 45
}...... like this I have 4000 entry with Different Fruit name.

出于某种原因,我必须将“sweet”名称更改为“fruit”。 为此,我不知道如何更新所有 4000 条目。非常感谢任何帮助。期望的结果将是这样的:

{
    "_id" : ObjectId("5a8a91baec129c86c6a30cb6"),
    "fruit" : "APPLE",
    "price" : 27,
    "sellingprice" : 45
},
{
    "_id" : ObjectId("5a8a91baec129c86c6a30cb7"),
    "fruit" : "BANANA",
    "price" :48,
    "sellingprice" : 59
}and so on upto 3998 entry more.

我知道在整个列上添加任何内容的查询,如下所示:

db.Collection.update({}, {$set: {'key': 'value'}}, false, true);

但对此没有任何线索。请提出一些好的方法

最佳答案

使用$rename .

db.Collection.update({'sweet': {$exists: true}}, {$rename:{'sweet':'fruit'}}, false, true);
  • 首先检查 sweet 字段是否存在
  • 然后重命名

关于javascript - 如何重命名mongodb中整个集合中的一个元素名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49491026/

相关文章:

javascript - 在单击选中值之前显示初始选中值

node.js - JavaScript 和分号

javascript - meteor :将子文档添加到现有记录

node.js - mongoose findById 不能使用正确的 ID

javascript - Highcharts - 如何通过 js 切换数据标签?

javascript - jQuery 中的 AJAX 验证 "freezes"?

javascript - 第二个参数 applicationverifier 必须是 firebase.auth.applicationverifier 的实现

Node.js 和 Express 模板似乎无需指定路径即可工作,如何

node.js - AWS.Transfer 不是构造函数

ruby-on-rails - Mongoid 有 Map/Reduce 吗?