我正在尝试更新psql数据库中的一堆行,并且如果可能的话,我希望在一个生成的sql语句中执行此操作。我能够生成类似于这样的批处理插入语句:
INSERT INTO my_table (col1, col2, col3)
VALUES (v11, v12, v13), (v21, v22, v23), ...
但是我不知道如何使用更新语句来执行此操作。我可以为我想要更新的每一行做一个SQL语句,但这似乎是不必要的,只比只有一个语句慢
P.S。所有行都有一个id列,所以我可以通过
引用它们答案 0 :(得分:0)
我能够在上面的链接中找到答案。看起来类似于
UPDATE my_table
SET x = case
when y = '1' then '1.1'
when y = '2' then '1.2'
end
WHERE y='1' OR y='2';