使用Insert方法进行多次更新 - 忽略唯一记录

时间:2013-01-18 15:56:19

标签: mysql

我想使用类似的方法一次更新多个记录:

Multiple Updates in MySQL

但是有一个MySQL命令可以忽略任何不重复的内容吗?像

这样的东西
ON DUPLICATE UPDATE ON UNIQUE IGNORE

(香港专业教育学院刚刚制作了这个代码)

1 个答案:

答案 0 :(得分:2)

为什么我们不能使用可以更新MULTIPLE行的单个UPDATE命令!

UPDATE mytable 
SET Col2 = CASE
  WHEN Col1 = 1 THEN 'new Value From someplace';
  WHEN Col1 = 2 THEN 'War and Peace';
  ELSE Col2
END

ELSE Col2 非常重要,否则您将使用NULL覆盖表的其余部分。

您可以添加更多 CASE 块来更新更多列。

通过这样做,您可以避免INSERTING UNIQUE记录的头痛。

希望这有帮助。