【发布时间】:2017-07-28 12:48:05
【问题描述】:
我必须在单个查询中使用 INSERT 和 UPDATE。对于具有 MERGE 语句的 SQL。
MySQL 是否支持 MERGE 语句。如果支持,请提供样品。
【问题讨论】:
-
MySQL 支持使用 INSERT ... ON DUPLICATE KEY UPDATE 语法[2] 可以用来达到类似的效果,但目标和源之间的连接只能在PRIMARY KEY 或 UNIQUE 约束,在 ANSI/ISO 标准中不需要。它还支持 REPLACE INTO 语法,[3] 首先尝试插入,如果失败,则删除该行(如果存在),然后插入新行。
-
没有主键或唯一键是否可以继续?