I need to update a document in an array inside another document in Mongo DB
{
"_id": ObjectId ("51cff693d342704b5047e6d8"),
"author": "test",
"body": "sdfkj dsfhk asdfjad",
"comments": [
{
"author": "test",
"body": "sdfkjdj \ r \ nasdjgkfdfj",
"email": " test@tes.com "
},
{
"author": "hola",
"body": "sdfl \ r \ nhola \ r \ nwork here"
}
],
"date": ISODate ("2013-06-30T09: 12: 51.629Z"),
"permalink": "jaiho",
"tags": [
"jaiho"
],
"title": "JAiHo"
}
Q1) Update email of 0th element of comments array
db.posts.update ({"permalink": "haha"}, {$ set: {"comments.0.email": 1}})
This doesn't throw any exception but doesn't update anything as well
Q2) Add a field on nth element of comments array number_likes
db.posts.update ({"permalink": "haha"}, {$ inc: {"comments.0.num_likes": 1}})
Doesn't work either.
Am I missing something here?
source share