更新语句 rethinkdb
Update statement rethinkdb
我在数据库中有以下 json 结构:
{
id: "dlsadas",
code : {
"312-43-1-3-v-d" : {
contents : [
{
"id" : 1
},
{
"id" : 2
}
]
},
"dbhwu-0dw-dw-dn" : {
contents : [
{
"id" : 5
},
{
"id" : 6
}
]
}
}
}
我的问题是:
我如何编写更新语句,以便键 312-43-1-3-v-d 的 contents 数组获取对象 {id:8} 附加。
据我所读,我必须做的事情是:
r.table('table').filter(...).update({code : {key: r.row(contents).append({id:8}) }})
但是我不能。
这能实现吗?
尝试
r.table('table')
.get('dlsadas')
.update(function(doc) {
return {code: {
'dbhwu-0dw-dw-dn': {
contents: doc('code')('dbhwu-0dw-dw-dn')('contents').append({id:8})
}
}};
})
或者,也许考虑将您的数据格式更改为更易于使用的格式 - 取决于您的用例。
我在数据库中有以下 json 结构:
{
id: "dlsadas",
code : {
"312-43-1-3-v-d" : {
contents : [
{
"id" : 1
},
{
"id" : 2
}
]
},
"dbhwu-0dw-dw-dn" : {
contents : [
{
"id" : 5
},
{
"id" : 6
}
]
}
}
}
我的问题是:
我如何编写更新语句,以便键 312-43-1-3-v-d 的 contents 数组获取对象 {id:8} 附加。
据我所读,我必须做的事情是:
r.table('table').filter(...).update({code : {key: r.row(contents).append({id:8}) }})
但是我不能。 这能实现吗?
尝试
r.table('table')
.get('dlsadas')
.update(function(doc) {
return {code: {
'dbhwu-0dw-dw-dn': {
contents: doc('code')('dbhwu-0dw-dw-dn')('contents').append({id:8})
}
}};
})
或者,也许考虑将您的数据格式更改为更易于使用的格式 - 取决于您的用例。