标签: mongodb mongoose mongodb-query
如何替换mongodb数组元素中的所有元素。如下例所示,我的要求是从技能数组中删除两个对象,并在其中添加新元素。
{ "_id": "uniqueid", "skills": [ { "skill": "dancer" }, { "skill": "singer" } ] }
我需要替换技能数组字段的所有元素。使用mongodb java驱动程序或其他查询类型如何实现?
答案 0 :(得分:1)
您只需要使用 $ set 运算符$set即可将技能设置为新值,该值将是您要替换的新元素的数组。
db.collectionName.update( { _id: 'uniqueid' }, { $set: { skills: [{'new elements'}] } } )
如果要删除所有元素,请将技能设置为空数组{skills:[]}
如果要基于值删除某些元素,请使用$ pull运算符$pull