MongoDB更新(将项列表插入数组)

ham*_*med 8 arrays mongodb mongodb-query

我想在Mongo中向几行的数组添加几个项目.我怎样才能做到这一点?

我想从这开始:

{'x': 'h', arr: [1,2,3] }
{'x': 'h', arr: [1,3] }
Run Code Online (Sandbox Code Playgroud)

并添加数组[6,8],其中x等于'h':

{'x': 'h', arr: [1,2,3,6,8] }
{'x': 'h', arr: [1,6,8] }
Run Code Online (Sandbox Code Playgroud)

Ada*_*ord 11

我认为你要找的是$ pushAll运算符.看看这里:

http://docs.mongodb.org/manual/reference/operator/pushAll/#pushall

  • 看起来Mongo人们重新组织了他们的文档.这里有直接链接:http://docs.mongodb.org/manual/reference/operator/pushAll/#_S_pushAll (3认同)

the*_*Sin 8

如果你有一个名为MongoDB的集合yourCollection和一个带有名称的记录x,你可以使用以下内容更新子数组:

db.test.update({"name":"x"},{"$ pushAll":{arr:[1,2,3]}})

这里重要的关键字是$ pushAll.您可以使用它将项添加到单个记录属性内的数组中.

  • 它从版本2.4开始被弃用.使用$ each代替 (2认同)