如何在 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") ] }

更新於: 31-Mar-2020

620 次觀看

開啟你的 職業

完成課程獲得認證

立即開始
廣告