我正在try 用一个更新调用更新文档中的两个独立array.有办法做到这一点吗?

例如,如果我有一个文档,比如:

{
  _id:1,
  array1:[1],
  array2:[4]
}

现在我正在做这件事:

db.collection.update({_id:1},{$push:{array1:"2"}})
db.collection.update({_id:1},{$push:{array2:"5"}})

有没有办法把这减少到一个电话?我试过只传递一个数组来推送,我试过在update对象中使用多个推送语句,但这些都不起作用.谢谢你的帮助!

推荐答案

可以为$push运算符指定多个字段

db.collection.update(
   { _id :1 }, 
   { $push : { array1 : "1",   array2 : "5" }}
)

Mongodb相关问答推荐

Mongo如何找到字段排除特殊字符

如何在Mongo中查找数组中的特定对象

更快地识别嵌套对象数组中具有重复字段的文档

MongoDB 支持的最 Big Data 库数

更新 MongoDB 中嵌套实体数组中的属性

哪个库最适合用于带有 Scala 的 MongoDB?

使用 Spring Boot >= 2.0.1.RELEASE 将 ZonedDateTime 保存到 MongoDB 时出现 CodecConfigurationException

将 mongoose 字符串模式类型默认值设为空白并使该字段可选

使用管道聚合的 Spring Data MongoDB 查找

Node.js MongoDB Upsert 更新

Python - Pymongo 插入和更新文档

如何使用 MongoDB 以编程方式预拆分基于 GUID 的分片键

mongodb启动错误

没有参考选项的mongoose填充字段

从 mongo 结果中删除 _id

MongoDB 和 Robomongo: Can't connect (authentication)

使用 mongoengine 将多文档插入到 mongodb

停止副本集 MongoDB

MongoDb 连接被拒绝

我需要手动关闭mongoose连接吗?