Node.js 查找并更新和重新计算平均温度

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

我有一个问题要通过Mongoose查询mongo

我在我的对象数组上推一个新对象,我想更新平均值(数组中我的对象的温度场)。型号:

我是从猫鼬开始的:

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)
                    })
                })
            }

        });