根据文档中的另一个字段更新字段

阿萨夫

是否可以使用update运算符基于另一个字段来更新文档字段?

在这里看到游乐场

我拥有健康和maxHealth的玩家集合,我的目标是将玩家健康重置为maxHealth值

db={
  "players": [
    {
      "_id": ObjectId("5fba17c1c4566e57fafdcd7e"),
      "username": "moshe",
      "health": 0,
      "maxHealth": 200,
      
    }
  ]
}

// update
db.players.update({
  username: "moshe"
},
{
  "$set": {
    "health": "$$maxHealth",
    
  }
})

谢谢!

土生的

从MongoDB v4.2开始您可以对聚合管道使用update

PlayersSchema.update(
  { username: "moshe" },
  [{
    "$set": { "health": "$maxHealth" }
  }]
)

在MongoDB v4.2以下

  1. 使用find()save()
PlayersSchema.find({ username: "moshe" }).forEach(function(doc){
  doc.health = doc.maxHealth; 
  doc.save();
})
  1. 使用find()bulkWrite()
const players = await PlayersSchema.find({ username: "moshe" }, { maxHealth: 1 });
const updatePlayers = players.map(({ _id, maxHealth }) => ({
  updateOne: {
    filter: { _id: mongoose.Types.ObjectId(_id) },
    update: { health: maxHealth }
  }
}));
PlayersSchema.bulkWrite(updatePlayers).then(res => {
   console.log(res.insertedCount, res.modifiedCount, res.deletedCount);
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据MongoDB文档中的另一个字段更新一个字段(在Node.js中使用Mongoose)

来自分类Dev

根据MongoDB文档中的另一个字段更新一个字段(在Node.js中使用Mongoose)

来自分类Dev

删除字段并更新文档中的另一个字段

来自分类Dev

当另一个字段更新时更新字段的模式的标准实践

来自分类Dev

SQL更新字段基于另一个字段的条件

来自分类Dev

Laravel更新字段,带有另一个字段值

来自分类Dev

C# 使用另一个字段的 setter 更新字段

来自分类Dev

MySQL中嵌套的select语句用于根据另一个字段的最大值更新字段会产生错误

来自分类Dev

在每个文档中添加一个新字段,并在mongodb中为同一文档的另一个字段赋值

来自分类Dev

MongoDB:如何为集合中的每个文档设置一个新字段,该字段等于另一个字段的值

来自分类Dev

MongoDB Aggregate在文档中添加一个新字段(如果已存在另一个字段)

来自分类Dev

根据另一个字段更新一个字段的值

来自分类Dev

使用字段值更新同一文档中的另一个字段

来自分类Dev

在Cloud Firestore中创建另一个字段时,如何更新文档中的字段?

来自分类Dev

Django-根据另一个字段更新模型字段

来自分类Dev

根据另一个字段的总和更新SQLite布尔字段

来自分类Dev

Elasticsearch将每个文档的ID更新为文档中另一个字段的值

来自分类Dev

Elasticsearch将每个文档的ID更新为文档中另一个字段的值

来自分类Dev

React:以动态生成的形式基于另一个字段更新字段值

来自分类Dev

postgres - 创建触发器以使用新格式的另一个字段更新字段

来自分类Dev

根据流中的另一个字段汇总字段

来自分类Dev

根据流中的另一个字段汇总字段

来自分类Dev

在每个行组中,根据另一个字段比较日期字段

来自分类Dev

MongoDB使用另一个字段的值添加新字段

来自分类Dev

在另一个字段上使用 RegEx 在 R data.table 中创建新字段

来自分类Dev

仅在mongodb中的字段小于另一个字段时更新

来自分类Dev

Django根据另一个字段表单更新表单

来自分类Dev

根据另一个字段的内容替换一个字段的内容

来自分类Dev

根据同一模型中的另一个字段保存模型中的字段。姜戈

Related 相关文章

  1. 1

    根据MongoDB文档中的另一个字段更新一个字段(在Node.js中使用Mongoose)

  2. 2

    根据MongoDB文档中的另一个字段更新一个字段(在Node.js中使用Mongoose)

  3. 3

    删除字段并更新文档中的另一个字段

  4. 4

    当另一个字段更新时更新字段的模式的标准实践

  5. 5

    SQL更新字段基于另一个字段的条件

  6. 6

    Laravel更新字段,带有另一个字段值

  7. 7

    C# 使用另一个字段的 setter 更新字段

  8. 8

    MySQL中嵌套的select语句用于根据另一个字段的最大值更新字段会产生错误

  9. 9

    在每个文档中添加一个新字段,并在mongodb中为同一文档的另一个字段赋值

  10. 10

    MongoDB:如何为集合中的每个文档设置一个新字段,该字段等于另一个字段的值

  11. 11

    MongoDB Aggregate在文档中添加一个新字段(如果已存在另一个字段)

  12. 12

    根据另一个字段更新一个字段的值

  13. 13

    使用字段值更新同一文档中的另一个字段

  14. 14

    在Cloud Firestore中创建另一个字段时,如何更新文档中的字段?

  15. 15

    Django-根据另一个字段更新模型字段

  16. 16

    根据另一个字段的总和更新SQLite布尔字段

  17. 17

    Elasticsearch将每个文档的ID更新为文档中另一个字段的值

  18. 18

    Elasticsearch将每个文档的ID更新为文档中另一个字段的值

  19. 19

    React:以动态生成的形式基于另一个字段更新字段值

  20. 20

    postgres - 创建触发器以使用新格式的另一个字段更新字段

  21. 21

    根据流中的另一个字段汇总字段

  22. 22

    根据流中的另一个字段汇总字段

  23. 23

    在每个行组中,根据另一个字段比较日期字段

  24. 24

    MongoDB使用另一个字段的值添加新字段

  25. 25

    在另一个字段上使用 RegEx 在 R data.table 中创建新字段

  26. 26

    仅在mongodb中的字段小于另一个字段时更新

  27. 27

    Django根据另一个字段表单更新表单

  28. 28

    根据另一个字段的内容替换一个字段的内容

  29. 29

    根据同一模型中的另一个字段保存模型中的字段。姜戈

热门标签

归档