javascript - 在不同条件下更新 sequelize 中的多行

标签 javascript postgresql sequelize.js

我正在尝试对 postgres 数据库中的行执行一个带有 sequelize 的更新命令。我需要能够使用相同的值更新具有不同条件的多行。

例如,假设我有一个包含以下字段的用户表:

  • 身份证
  • 名字
  • 姓氏
  • 性别
  • 地点
  • 创建时间

假设,我在这个表中有 4 条记录,我想用 ID 为 1 和 4 的记录更新一个新位置,比如尼日利亚。

像这样:SET field1 = 'foo' WHERE id = 1, SET field1 = 'bar' WHERE id = 2

我如何通过 sequelize 实现这一目标?

最佳答案

您可以一次更新多条记录,但所有记录的更新相同 , 如果你想对不同的条件进行不同的更新,那么你必须多次运行

示例:

这会将 fields1 更新为 foo ,其中 id 为 1 或 4

let ids = [1,4];
Your_model.update({ field1 : 'foo' },{ where : { id : ids }}); 

如果 id 为 1,这会将 field1 更新为 foo,如果 id 为 4,则将 field1 更新为 bar

Your_model.update({ field1 : 'foo' },{ where : { id : 1 }});
Your_model.update({ field1 : 'bar' },{ where : { id : 4 }}); 

希望这能消除您所有的疑虑。

关于javascript - 在不同条件下更新 sequelize 中的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49643047/

相关文章:

javascript - 从 Sequelize 方法返回基于 promise 的回调?

sql - Postgres 限制另一个表中 WHERE IN id 中每个字段的行数

PostgreSQL 数据文件位置

node.js - 更新时sequelize的返回值是多少?

javascript - 防止超链接在新标签页/窗口中打开

javascript - 按下按钮时让烟花发射

javascript - $.ajax post 请求头字段Content-Type不允许CORS

python - 使用查询集从 Django 获取百万记录很慢

sequelize.js - HapiJS 和 Sequelize 没有 Sequelize CLI

javascript - 函数不返回值