如何在 MongoDB 中刪除部分資料?


將待刪除的值設定為變數,如需刪除部分資料,請使用 remove()。讓我們為文件建立一個集合 -

> db.demo488.insertOne({"Name":"Chris"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8351e0b0f3fa88e22790b2")
}
> db.demo488.insertOne({"Name":"David"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8351e8b0f3fa88e22790b3")
}
> db.demo488.insertOne({"Name":"Bob"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8351ebb0f3fa88e22790b4")
}
> db.demo488.insertOne({"Name":"Mike"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8351eeb0f3fa88e22790b5")
}
> db.demo488.insertOne({"Name":"Sam"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e835202b0f3fa88e22790b6")
}
> db.demo488.insertOne({"Name":"John"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e835207b0f3fa88e22790b7")
}
> db.demo488.insertOne({"Name":"Robert"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e83520cb0f3fa88e22790b8")
}

藉助 find() 方法顯示集合中的所有文件 -

> db.demo488.find();

這將產生以下輸出 -

{ "_id" : ObjectId("5e8351e0b0f3fa88e22790b2"), "Name" : "Chris" }
{ "_id" : ObjectId("5e8351e8b0f3fa88e22790b3"), "Name" : "David" }
{ "_id" : ObjectId("5e8351ebb0f3fa88e22790b4"), "Name" : "Bob" }
{ "_id" : ObjectId("5e8351eeb0f3fa88e22790b5"), "Name" : "Mike" }
{ "_id" : ObjectId("5e835202b0f3fa88e22790b6"), "Name" : "Sam" }
{ "_id" : ObjectId("5e835207b0f3fa88e22790b7"), "Name" : "John" }
{ "_id" : ObjectId("5e83520cb0f3fa88e22790b8"), "Name" : "Robert" }

以下是 MongoDB 中刪除部分資料的查詢 -

> var deleteData = db.demo488.find({}, {_id : 1}).skip(4).toArray().map(function(d) { return
d._id; });
> db.demo488.remove({_id: {$in: deleteData}})
WriteResult({ "nRemoved" : 3 })

藉助 find() 方法顯示集合中的所有文件 -

> db.demo488.find();

這將產生以下輸出 -

{ "_id" : ObjectId("5e8351e0b0f3fa88e22790b2"), "Name" : "Chris" }
{ "_id" : ObjectId("5e8351e8b0f3fa88e22790b3"), "Name" : "David" }
{ "_id" : ObjectId("5e8351ebb0f3fa88e22790b4"), "Name" : "Bob" }
{ "_id" : ObjectId("5e8351eeb0f3fa88e22790b5"), "Name" : "Mike" }

更新時間:11-05-2020

223 次瀏覽

開啟你的 職業生涯

完成課程獲得認證

立即開始
廣告
© . All rights reserved.