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

Cách thêm trường mới vào tất cả các tài liệu trong bộ sưu tập MongoDB

Để thêm một trường mới, hãy sử dụng $ addFields 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.demo712.insertOne({"Name":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea85f675d33e20ed1097b82")
}
> db.demo712.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea85f6a5d33e20ed1097b83")
}
> db.demo712.insertOne({"Name":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea85f6e5d33e20ed1097b84")
}

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

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

{ "_id" : ObjectId("5ea85f675d33e20ed1097b82"), "Name" : "John" }
{ "_id" : ObjectId("5ea85f6a5d33e20ed1097b83"), "Name" : "Chris" }
{ "_id" : ObjectId("5ea85f6e5d33e20ed1097b84"), "Name" : "Bob" }

Sau đây là truy vấn để thêm trường mới -

> db.demo712.aggregate([
...    {
...       $addFields:
...       {
...          "TeacherName":"Robert"
...       }
...    }
... ]
... );

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

{ "_id" : ObjectId("5ea85f675d33e20ed1097b82"), "Name" : "John", "TeacherName" : "Robert" }
{ "_id" : ObjectId("5ea85f6a5d33e20ed1097b83"), "Name" : "Chris", "TeacherName" : "Robert" }
{ "_id" : ObjectId("5ea85f6e5d33e20ed1097b84"), "Name" : "Bob", "TeacherName" : "Robert" }