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

Cập nhật bản ghi thẻ trong MongoDB một cách nhanh chóng

Sử dụng $ cùng với lệnh cập nhật để cập nhật các bản ghi thẻ. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo713.insertOne(
...    {
...       tags:
...       [
...          {
...             id:101,
...             Name:"Tag-1"
...          },
...          {
...             id:102,
...             Name:"Tag-3"
...          },
...          {
...             id:103,
...             Name:"Tag-3"
...          }
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea8625a5d33e20ed1097b87")
}

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

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

{ "_id" : ObjectId("5ea8625a5d33e20ed1097b87"), "tags" : [ { "id" : 101, "Name" : "Tag-1" }, { "id" : 102, "Name" : "Tag-3" }, { "id" : 103, "Name" : "Tag-3" } ] }

Sau đây là truy vấn cập nhật thẻ -

> db.demo713.update({"tags.id":102},{$set:{"tags.$.Name":"Tag-2"}},false,true);
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.demo713.find().pretty();

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

{
   "_id" : ObjectId("5ea8625a5d33e20ed1097b87"),
   "tags" : [
      {
         "id" : 101,
         "Name" : "Tag-1"
      },
      {
         "id" : 102,
         "Name" : "Tag-2"
      },
      {
         "id" : 103,
         "Name" : "Tag-3"
      }
   ]
}