Sử dụng update() với multi: true
Để cập nhật cùng một giá trị cho tất cả bản ghi trong collection, dùng update({}, { $set: { field: "giá_trị" } }, { multi: true }). Lưu ý: Từ MongoDB 3.2, nên dùng updateMany() thay thế.
Dữ liệu mẫu
> db.demo720.insertMany([
{ SubjectName: "MySQL" },
{ SubjectName: "Java" },
{ SubjectName: "C" },
{ SubjectName: "C++" }
]);
Truy vấn cập nhật
// Cách cũ (MongoDB < 3.2)
db.demo720.update(
{},
{ $set: { SubjectName: "MongoDB" } },
{ multi: true }
);
// Cách hiện đại (MongoDB >= 3.2)
db.demo720.updateMany(
{},
{ $set: { SubjectName: "MongoDB" } }
);
Kết quả
{ "_id": ObjectId("..."), "SubjectName": "MongoDB" }
{ "_id": ObjectId("..."), "SubjectName": "MongoDB" }
{ "_id": ObjectId("..."), "SubjectName": "MongoDB" }
{ "_id": ObjectId("..."), "SubjectName": "MongoDB" }
Tất cả 4 bản ghi đều được cập nhật trường SubjectName thành "MongoDB".