如何从MongoDB中的数组中提取偶数?

使用$mod获取偶数并将其从数组中拉出。首先让我们创建一个包含文档的集合-

>db.pullEvenNumbersDemo.insertOne({"AllNumbers":[101,102,104,106,108,109,110,112,14,17,18,21]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd45b072cba06f46efe9eea")
}

以下是在find()方法的帮助下显示集合中所有文档的查询-

> db.pullEvenNumbersDemo.find().pretty();

这将产生以下输出-

{
   "AllNumbers" : [
      102,
      104,
      106,
      108,
      109,
      110,
      112,
      14,
      17,
      18,
      21
   ]
}

以下是从MongoDB中的数组中提取偶数的查询-

> db.pullEvenNumbersDemo.updateMany({},{ "$pull": { "AllNumbers": { "$mod": [ 2, 0 ] } } } );
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

让我们再次检查所有文件-

> db.pullEvenNumbersDemo.find().pretty();

这将产生以下输出-

{
   "_id" : ObjectId("5cd45b072cba06f46efe9eea"),
   "AllNumbers" : [
      101,
      109,
      17,
      21
   ]
}