Khi mongodb truy vấn một trường mảng, nó cung cấp một toán tử vị trí $
mà bạn có thể sử dụng để truy cập một phần tử cụ thể trong mảng đó. Bạn có thể sử dụng toán tử elemMatch để tìm kiếm các trường trong một mảng đối tượng.
Ví dụ:
db.myCollection.find({
_id: ObjectId("53b1a44350f148976b0b6044"),
myArray: {
$elemMatch: {key1: 'somevalue'}
}
}, {
$set:{
'myArray.$.key2': 'someOtherValue'
}
});
Xem: http://docs.mongodb.org/manual/reference/ toán tử / cập nhật / vị trí /