sequelize - 重复更新时批量插入

时间:2017-07-09 12:49:27

标签: node.js orm sequelize.js

我有以下架构,

create table test (id int primary key ,x integer)

我希望使用旧+新值

更新重复列x

喜欢跟随sequelize-nodejs的原始查询。

INSERT INTO test (id,x) VALUES (1,5)
  ON DUPLICATE KEY UPDATE x=x+VALUES(x);

1 个答案:

答案 0 :(得分:0)

你可以这样做:

  

第1步:查找实例
  第2步:使用旧版+新版

更新值

  

第3步:保存实例

Table.find({
          where: { //condition }
        })
        .then(entity => {
          if (entity) {
            entity.val += req.body.newVal;
            return entity.save()
              .then(() => {
                res.status(200);
              })
              .catch(validationError(res));
          } else {
            return res.status(404).end();
          }
        })