简单的数据增删改查官方都有案例,但多层的怎么准确读取判断到某条记录,小白我就不会了,特来请教。
在一个名为oil_price的表下面存储着和油站(station_id:"W9yCUdx_Lia3NQE8")有关的价格,价格以天为单位,每天存储92# 95#等型号油料的历史价格。
如果我现在要更新92#的价格,我希望是先判断是否存在当天( update_time这个字段可以作为判断)的历史价格,有的话进行替换更新92#的价格,没有的话,插入一条新数据。数据库小白,想知道云开发中的云数据库应该怎么写这个语句。
//这是一条价格记录,station_id是油站的id,一个油站全表只存在这么一条 {
_id:"W90ndau9e31Z7Krk",
station_id:"W9yCUdx_Lia3NQE8",
create_time: "2018-11-03T04:37:04.295Z",
price:[
{
oil:[
{
oil_type: "92#",
price:8.60
},
{
oil_type: "95#",
price:9.21
},
{
oil_type: "98#",
price:9.70
},
update_time:"2018-11-03T04:38:10.785Z"
]
},
{
oil:[
{
oil_type: "92#",
price:9.12
},
{
oil_type: "95#",
price:9.87
},
{
oil_type: "98#",
price:10.31
},
update_time:"2018-11-02T08:38:10.785Z"
]
}
]
}
|
|
从下午纠结到现在了,搞不对。。。
同样问题,不知道如何解决
解决了没,
哈哈哈,
感觉有个最笨的办法,整个get下来,改完然后再推回去
db.collection('todos').doc('doc-id').update({
data: {
style: {
color: 'red'
}
}
})
// 以下方法更新 style 为 { color: 'red', size: 'large' }
db.collection('todos').doc('doc-id').update({
data: {
style: _.set({
color: 'red',
size: 'large'
})
}
})
解决了没,我也遇到类似的问题
大家跳转小程序的时候有没有遇到过这个问题啊?navigateToMiniProgramAppIdList