mysql 合并表 DUPLICATE KEY (merge) 语法

之前一直用 MS-SQL 需要合并表用merge语法的, 改换mysql后发现没有这个语法。

找了一下有个替代方案,还是挺方便的。

ALTER TABLE brand
ADD UNIQUE (code)

ALTER TABLE brand_temp
ADD UNIQUE (brand_code)

INSERT INTObrand(code,name,enable,created_at)
SELECT brand_code,brand_name,enables,now() FROM brand_temp
 ON DUPLICATE KEY UPDATE `name`=brand_name, enable = enables;

这里需要注意的是

brand和brand_temp表都需要有主键或是一个 UNIQUE索引列

(详细的可以自己做测试)

posted @ 2017-06-13 08:58  李明燮  阅读(819)  评论(0编辑  收藏  举报