首页 > 解决方案 > mysql。如果值存在则更新 - 否则插入(对于非主值和非唯一值)

问题描述

我有my_table专栏column1
如果有column1='old'我想更新这些行的行。
否则,我想插入一个新行。

像这样的东西:

IF(
   (EXISTS(
      SELECT * FROM my_table WHERE column1='old'
       )),
   (UPDATE my_table SET column1='new' WHERE column1='old'),
   (INSERT INTO my_table (column1) VALUES ('new') )
     )

我使用MySql所以我不能IF在查询的开头使用。

column1不是唯一的,也不是主要的。所以我不能使用ON DUPLICATE KEY UPDATEREPLACE

标签: mysqlif-statement

解决方案


推荐阅读