求写个mongoose 查询语句。

clipboard.png

查询所有 quantity 为10 的。然后统一更改它们的 sku 为‘abc’ 自增它们的orders都加5,怎么写呢?

阅读 2.2k
2 个回答

shell的写法:

db.<collection>.updateMany({
    quantity: 10
}, {
    $set: { sku: "abc" },
    $inc: { "metrics.orders": 5 }
});

对照mongoose的API自己改写一下吧。

希望对你有所帮助
XXX.find({quantity: 10}).exec(function (err, results) {

    if(err) {
        return res.status(400).send ({
            code: -1,
            message: '更新失败,网络或内部错误'
        })
    } else {
        for(let result of results) {
            let newXXX = new XXX(result)
            newXXX.sku = "abc"
            newXXX.metrics.orders = newXXX.metrics.orders + 5
            newXXX.save (function (err, newxxx) {
                ...
            })

        } 
    }

})

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进