0
我只是想知道更新所有的嵌入式文件。這是我的文檔:如何更新多個嵌套/嵌入文檔mongodb?
{
"_id":1,
"chat":[
{ "sender":"bar",
"message":"Hi",
"status":"pending"
},
{ "sender":"bar",
"message":"How are you?",
"status":"pending"
}
}
{
"_id":2,
"chat":[
{ "sender":"foo",
"message":"Hello",
"status":"pending"
},
{ "sender":"foo",
"message":"Are you okay?",
"status":"pending"
},
{ "sender":"someone",
"message":"Where are you?",
"status":"pending"
}
}
我試過了,但它不能同時工作,它只是用於更改第一個嵌入式文檔。這裏是我的代碼:
db.chat.update({"_id":"2", "chat.sender":"foo"},{$set{"chat.$.status":"sent"}},{multi:true})
我想更新文檔是這樣的,它應該在1個過程,同時也改變了:
{
"_id":1,
"chat":[
{ "sender":"bar",
"message":"Hi",
"status":"pending"
},
{ "sender":"bar",
"message":"How are you?",
"status":"pending"
}
}
{
"_id":2,
"chat":[
{ "sender":"foo",
"message":"Hello",
"status":"sent"
},
{ "sender":"foo",
"message":"Are you okay?",
"status":"sent"
},
{ "sender":"someone",
"message":"Where are you?",
"status":"pending"
}
}
如果你知道如何解決這個問題,請幫幫我...
Omg它的工作原理,但如何在PHP中實現? db-> chat-> find(array(「_ id」=>「2」))然後呢? –
不客氣。很抱歉,但我無法幫助您瞭解PHP。必須有一種方法可以在mongodb php庫中使用該查詢。 –
@哈桑查找條件應該是:{「_id」:2},編輯你的ans。 – radhakrishnan