{
oil_type:'92#', price: 7.92 },
oil_type:'95#', price: 8.26 },
oil_type:'98#', price: 9.04 },
}, {
oil_type:'92#', price: 7.82 },
oil_type:'95#', price: 8.26 },
oil_type:'98#', price: 9.04 },
},
|
上面是我某个数据表'oil_prices'中的数据,目前暂且只有2条,这时候我想通过根据station_id和oils数组中的oil_type进行查询到对应数据,然后更新对应的字段数据,能做到吗? 以下写法貌似没效果。
db.collection( 'oil_prices' ).where({ station_id: event.stationId, 'oils.$[].oil_type' : event.oilType }).update({ data: { 'oils.$[].price' : event.price }, success: function (res) { return { code:200, msg: '油价更新成功' } } }) |
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/query-array-object.html#%E5%8C%B9%E9%85%8D%E6%95%B0%E7%BB%84%E4%B8%AD%E5%85%83%E7%B4%A0
匹配数组中的元素
现在“92#” “95#” 和 “98#”的下标都不知道的情况下
我只想更新第二条纪录中的95#的价格,应该怎么写呢?
这个问题后来解决了吗,楼主,
我也越到了同样的问题
wx.cloud.database(...).collection(...).where(...).updata is not a functio 这是什么情况,帮忙看下呗