Node.js 查找并更新和重新计算平均温度
我有一个问题要通过Mongoose查询mongo 我在我的对象数组上推一个新对象,我想更新平均值(数组中我的对象的温度场)。型号: 我是从猫鼬开始的:Node.js 查找并更新和重新计算平均温度,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我有一个问题要通过Mongoose查询mongo 我在我的对象数组上推一个新对象,我想更新平均值(数组中我的对象的温度场)。型号: 我是从猫鼬开始的: sensDayModel.findByIdAndUpdate(resultFind[0].id,{$push:{"dayDatas":args}},function(err,result){ if (err) next(err,null) else{ sensDay
sensDayModel.findByIdAndUpdate(resultFind[0].id,{$push:{"dayDatas":args}},function(err,result){
if (err) next(err,null)
else{
sensDayModel.aggregate({$group:{_id:resultFind[0].id,date:"$date",avgTemperature:{$avg:"$dayDatas.temperature"},avgHumidity:{$avg:"$dayDatas.humidity"},dayDatas:"$dayDatas" }},function(err,result){
result.save(function(err,result){
if (err) next (err,null)
else next (null,result)
})
})
}
});
提前感谢您的回答 好的,那问题是什么?有什么东西不起作用吗?是的,它不起作用,但我找到了解决办法:)
sensDayModel.findByIdAndUpdate(resultFind[0].id,{$push:{"dayDatas":args}},function(err,result){
if (err) next(err,null)
else{
sensDayModel.aggregate({$group:{_id:resultFind[0].id,date:"$date",avgTemperature:{$avg:"$dayDatas.temperature"},avgHumidity:{$avg:"$dayDatas.humidity"},dayDatas:"$dayDatas" }},function(err,result){
result.save(function(err,result){
if (err) next (err,null)
else next (null,result)
})
})
}
});