Computer >> Máy Tính >  >> Lập trình >> MongoDB

Làm cách nào để xóa một chuỗi khỏi một mảng trong tài liệu MongoDB?

Bạn có thể sử dụng toán tử $ pull để xóa một chuỗi khỏi một mảng. Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.removeAStringDemo.insertOne({"Score":[45,67,89,"John",98,99,67]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cda5224b50a6c6dd317adbd")
}

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

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

Điều này sẽ tạo ra kết quả sau -

{
   "_id" : ObjectId("5cda5224b50a6c6dd317adbd"),
   "Score" : [
      45,
      67,
      89,
      "John",
      98,
      99,
      67
   ]
}

Sau đây là truy vấn để xóa một chuỗi khỏi một mảng trong tài liệu MongoDB. Chuỗi sẽ được xóa là “John” -

> db.removeAStringDemo.update( { _id :ObjectId("5cda5224b50a6c6dd317adbd") }, { $pull: { "Score":"John" }});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

Hãy để chúng tôi kiểm tra tài liệu một lần nữa -

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

Điều này sẽ tạo ra kết quả sau -

{
   "_id" : ObjectId("5cda5224b50a6c6dd317adbd"),
   "Score" : [
      45,
      67,
      89,
      98,
      99,
      67
   ]
}