2017-06-13 60 views
0

參數I具有這個文檔:如何編寫MongoDB的查詢?我需要設置在陣列

{ 
    '_id': 123456, 
    'name': 'myName', 
    'state':[{'user_id':1,user_state:1},{'user_id':11,user_state:2}] 
} 

我需要設置一個更日提交的, 'IS_ACTIVE':1,在狀態陣列對象,其中 「_id」 == 123456,USER_ID == 11

因此,它應該是這樣的:

{ 
    '_id': 123456, 
    'name': 'myName', 
    'state': [{'user_id':1,user_state:1}, 
       {'user_id':11,user_state:2,'is_active':1}] 
} 

但我堅持查詢:

{_id: new ObjectID(123456)}, {$set:{'state':???}} 

在此先感謝

回答

1

試試這個,

db.colection_name.update({_id: ObjectId("123456"), "state.user_id": 11}, { $set:{ "state.$.is_active" : 1 }}) 
+0

現在會嘗試。謝謝! – Serhiy

+0

worked.thanks。標記了你的答案。 – Serhiy

+0

高興地幫助:) –