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

Xóa giá trị khỏi ma trận như tài liệu trong MongoDB

Để xóa các giá trị khỏi ma trận, hãy sử dụng $ pull trong MongoDB. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo632.insertOne(
...    {
...       "arrayMatrix": [
...          [10,20],
...          [10,20],
...          [10,20],
...          [10,20],
...          [10,20],
...          [10,20]
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9b27b46c954c74be91e6c0")
}

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.demo632.find().pretty();

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

{
   "_id" : ObjectId("5e9b27b46c954c74be91e6c0"),
   "arrayMatrix" : [
      [
         10,
         20
      ],
      [
         10,
         20
      ],
      [
         10,
         20
      ],
      [
         10,
         20
      ],
      [
         10,
         20
      ],
      [
         10,
         20
      ]
   ]
}

Sau đây là truy vấn để xóa các giá trị khỏi ma trận như tài liệu trong MongoDB -

> db.demo632.update(
...    {},
...    {
...       "$pull": {
...          "arrayMatrix.0": 20,
...          "arrayMatrix.1": 20,
...          "arrayMatrix.2": 20,
...          "arrayMatrix.3": 20,
...          "arrayMatrix.4": 20,
...          "arrayMatrix.5": 20
...       }
...    }
... )
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

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.demo632.find().pretty();

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

{
   "_id" : ObjectId("5e9b27b46c954c74be91e6c0"),
   "arrayMatrix" : [
      [
         10
      ],
      [
         10
      ],
      [
         10
      ],
      [
         10
      ],
      [
         10
      ],
      [
         10
      ]
   ]
}