Sử dụng $push để thêm đối tượng phức tạp vào mảng Marks (ban đầu là mảng số). Tạo collection:
> db.demo585.insert({ firstName: 'John', lastName: 'Doe', SubjectName:"MongoDB", Marks: [59] });
WriteResult({ "nInserted" : 1 })
> db.demo585.insert({ firstName: 'Chris', lastName: 'Brown', SubjectName:"MySQL", Marks: [79] });
WriteResult({ "nInserted" : 1 })
Hiển thị dữ liệu:
> db.demo585.find();
Cập nhật: Thêm object {Value: 59, Times: 3} vào mảng Marks của John Doe MongoDB:
> db.demo585.update({ ... firstName: 'John', lastName: 'Doe', SubjectName:"MongoDB", Marks: [59] ... }, { ... "$push": { "Marks": { "Value": 59, "Times": 3 } } ... }); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })Kết quả (mảng Marks chứa hỗn hợp số và object):
> db.demo585.find();Lưu ý: Mảng MongoDB hỗ trợ kiểu dữ liệu hỗn hợp. Tuy nhiên, thiết kế tốt nên thống nhất kiểu (chỉ số hoặc chỉ object) để tránh lỗi xử lý downstream.