mysql 合并表 DUPLICATE KEY (merge) 语法

本文介绍了一种在MySQL中实现类似MS-SQL合并表的方法。通过为表添加唯一索引,并使用INSERT...ON DUPLICATE KEY UPDATE语句来更新或插入记录。

之前一直用 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索引列

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

转载于:https://www.cnblogs.com/li-mingxie/p/6999310.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值