如何在MongoDB中为数组提取偶数?

时间:2016-05-04 13:33:22

标签: arrays mongodb mongodb-query mongo-shell

我们说我们有以下文件:

db.test.insert({a: [2, 3, 4, 5, 6, 7, 8]})

如何删除所有偶数并离开[3, 5, 7]?可以使用$pull运算符来完成吗?

1 个答案:

答案 0 :(得分:2)

您可以使用$pull更新运算符和$mod查询运算符从数组中提取所有偶数元素。要更新多个文档,我建议您使用updateMany方法,对于单个更新,您应该使用updateOne方法,因为update在官方语言驱动程序中突出显示为已弃用。问题是shell方法落后于驱动程序。也没有人真正在shell中编写应用程序。

db.test.updateMany({}, { "$pull": { "a": { "$mod": [ 2, 0 ] } } } )