将新字段添加到 MongoDB 中的集合,但值基于另一个字段中的值

时间:2021-07-02 19:35:36

标签: mongodb

如何向所有文档添加新字段,但根据另一个字段中的值添加值? 示例:

{"_id":"1","city":"安曼"} {"_id":"2","city":"开罗"}

我想根据城市名称向所有文档(首都)添加一个新字段,如果城市是安曼首都则为真,否则为假

1 个答案:

答案 0 :(得分:0)

我认为您想要实现的是根据每个文档中的现有详细信息向每个文档添加新字段。使用您的收藏详细信息试试这个脚本:

   use YourDB;
   db.YourCollection.find({}).forEach(function(doc){
      if(doc.city =='whatever'){
         doc.capital=true;
      }else{
         doc.capital=false;
      }
      db.YourCollection.save(doc);
    });