【问题标题】:MongoDb replaceOne() but wanted few fieldMongoDb replaceOne() 但需要很少的字段
【发布时间】:2020-07-22 06:21:14
【问题描述】:

在 replaceOne() 的情况下 --> 它用新对象替换整个对象 -->如果我想要旧对象的少量字段并用新对象替换该对象怎么办

【问题讨论】:

标签: database mongodb mongodb-query


【解决方案1】:

replaceOne 将替换整个文档并使用您需要使用 updateOne 替换的文档进行更新,而这只会更新您希望其余字段保持原样的特定字段

例如

 db.restaurant.updateOne(
      { "name" : "Central Perk Cafe" },
      { $set: { "violations" : 3 }},
      {upsert:true} 
   );

如果新文档不存在,此处的 upsert:true 选项将有助于插入新文档,您可以在此处阅读更多信息 https://docs.mongodb.com/manual/reference/method/db.collection.updateOne/

【讨论】:

    【解决方案2】:

    你可以使用更新 如果您的文件是 {name:"company",country:"India",owner:"me"}

    db.company.update({
                      _id:*id*
                         },
                       {$set:{
                          name:"mycompany",
                          country:"United Kingdom"}})
    

    【讨论】:

      猜你喜欢
      • 2011-07-21
      • 2019-12-17
      • 2016-06-29
      • 2010-12-18
      • 2018-01-09
      • 1970-01-01
      • 2015-08-12
      • 1970-01-01
      相关资源
      最近更新 更多