更新查询中的增量值 mongoDB
Increment value in update query mongoDB
我正在尝试在 mongoose 函数中添加两个值。
我正在使用的函数:
Equipa.findOne({ '_id': req.params.equipaID }, function (error, equipa) {
if (error) {
return (error);
}
if (util.isNullOrUndefined(equipa)) {
return res.status(204).end()
}
console.log(equipa.distanciaTotal + "------" + req.body.distanciaPercorrida),
{ total : {$add[equipa.distanciaTotal,req.body.distanciaPercorrida]}},
console.log(total)
});
equipa.distanciaTotal
和req.body.distanciaPercorrida
中的值是正确的,Equipa.findOne
找到的Equipa
也是正确的。
我认为更新文档会很好,但我根本无法将这两个值相加。
您可以使用 $inc
增加现有值
Equipa.findOneAndUpdate(
{ '_id': req.params.equipaID },
{ '$inc': {
distanciaTotal: req.body.distanciaPercorrida }
}
)
你可以使用 $inc
Equipa.findOneAndUpdate(
{ '_id': req.params.equipaID },
{ $inc: { distanciaTotal: req.body.distanciaPercorrida } }
);
或者更新后保存文档
Equipa.findOne({ '_id': req.params.equipaID }, (err, equipa) => {
equipa.distanciaTotal += req.body.distanciaPercorrida;
equipa.save();
});
我正在尝试在 mongoose 函数中添加两个值。
我正在使用的函数:
Equipa.findOne({ '_id': req.params.equipaID }, function (error, equipa) {
if (error) {
return (error);
}
if (util.isNullOrUndefined(equipa)) {
return res.status(204).end()
}
console.log(equipa.distanciaTotal + "------" + req.body.distanciaPercorrida),
{ total : {$add[equipa.distanciaTotal,req.body.distanciaPercorrida]}},
console.log(total)
});
equipa.distanciaTotal
和req.body.distanciaPercorrida
中的值是正确的,Equipa.findOne
找到的Equipa
也是正确的。
我认为更新文档会很好,但我根本无法将这两个值相加。
您可以使用 $inc
增加现有值
Equipa.findOneAndUpdate(
{ '_id': req.params.equipaID },
{ '$inc': {
distanciaTotal: req.body.distanciaPercorrida }
}
)
你可以使用 $inc
Equipa.findOneAndUpdate(
{ '_id': req.params.equipaID },
{ $inc: { distanciaTotal: req.body.distanciaPercorrida } }
);
或者更新后保存文档
Equipa.findOne({ '_id': req.params.equipaID }, (err, equipa) => {
equipa.distanciaTotal += req.body.distanciaPercorrida;
equipa.save();
});