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

2024-03-20

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

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

  • ID
  • Gender
  • Location
  • 创建于

假设,我在此表中有 4 条记录,我想用新位置(例如尼日利亚)更新 ID - 1 和 4 的记录。

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

我怎样才能通过续集实现这一目标?


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

例子 :

这将更新fields1到 foo ,哪里id是 1 或 4

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

这将更新field1foo如果id是 1 ,并且field1禁止如果id is 4

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在不同条件下更新sequelize中的多行 的相关文章

随机推荐