2017-07-28 113 views
1

下面是我一直在努力的結構。標準是像我想更新狀態節點名稱目前在Node2在一個單一的查詢。rethinkdb更新與嵌套對象數組的查詢

"nodeList": [ 
    { 
    "nodeName": "Node1", 
    "status": "Not Ready" 
    }, 
    { 
    "nodeName": "Node2", 
    "status": "Ready" 
    }, 
    { 
    "nodeName": "Node3", 
    "status": "Ready" 
    } 
] 

感謝您的幫助!

回答

2

嘗試此查詢: -

r.db("your_database").table("your_table_name") 
.get('id') 
.update({  
      nodeList: r.row('nodeList').map(function (newStatus) { 
      return r.branch(
      newStatus('nodeName').eq('field_value'),           
      newStatus.merge({status: 'new value'}),newStatus) 
     }) 

});