【发布时间】:2021-02-24 17:14:10
【问题描述】:
我有两张表,其中包含我希望合并的客户数据。一张是 2013-2017 年的旧数据,一张是 2018 年至今的数据。
我基本上想使用 UNION 将旧数据粘贴在新数据下,这很简单。但是,我有两个表中都存在的老客户(可以在 customer_id 上加入)。
理想情况下,我编写的查询将执行以下操作:
如果 customer_id 存在于新数据中,它只会将 newtable.starting_date 更新为 oldtable.starting_date。
如果新数据中不存在 customer_id,则将整行添加到表中。
我在 MySQL 中这样做。
【问题讨论】:
-
INSERT .. ON DUPLICATE KEY UPDATE -
参见INSERT下的手册
标签: mysql sql duplicates sql-update sql-insert