如何从MongoDB中的ObjectID数组中提取值?

要从ObjectID数组中提取值,请在MongoDB中使用$pull。让我们创建一个包含文档的集合-

> db.demo258.insertOne({"arrayOfObjectsId":[ ObjectId("5e47a5e81627c0c63e7dba92"),ObjectId("5e47a5e51627c0c63e7dba91")]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e47a8211627c0c63e7dba97")
}

find()方法的帮助下显示集合中的所有文档-

> db.demo258.find();

这将产生以下输出-

{ "_id" : ObjectId("5e47a8211627c0c63e7dba97"), "arrayOfObjectsId" : [ ObjectId("5e47a5e81627c0c63e7dba92"), ObjectId("5e47a5e51627c0c63e7dba91") ] }

以下是从ObjectID数组中提取值的查询-

> db.demo258.update( { }, { $pull: { arrayOfObjectsId: { $in: [ ObjectId("5e47a5e81627c0c63e7dba92") ] } } } );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

find()方法的帮助下显示集合中的所有文档-

> db.demo258.find();

这将产生以下输出-

{ "_id" : ObjectId("5e47a8211627c0c63e7dba97"), "arrayOfObjectsId" : [ ObjectId("5e47a5e51627c0c63e7dba91") ] }