我使用mysql数据库。我有一个主表与id作为主键(自动增量,而不是空,唯一)约束。
我的主桌:
在第二个表中,我有相同的字段,但没有id列
现在我需要用下面的条件从辅助表更新主表。
如果主表中存在用户数据,则应将其替换为次要表数据,并添加新行。(例如:user1的第一行需要替换为次要表数据,主表中应添加user1的新行)
预期产出:
我试过插入...在重复更新。它不工作!有什么帮助吗?
尝试以下步骤。
步骤1:如果用户存在于第二个表中,则要替换主表中的数据,请首先删除主表中存在于第二个表中的所有数据
delete from main_table where login_name in (select login_name from second_table);
第二步:
insert into main_table (login_name, mgr_name, ...)
select login_name, mgr_name,... from second_table
在第一步中,您将删除第二个表中的用户,在第2步中,您将插入第二个表中的所有用户,因此最终将替换主表中的现有用户。