我有两个具有完全相同字段的表。表A包含7160条记录和表B 7130条记录。现在我想将表A中的不同记录插入表B,这样B中不应该有任何重复的条目。我应该怎么做呢?
答案 0 :(得分:1)
您可以使用“union”查询将多个表的结果合并到一个结果集中。 “union”只会从所有表中返回不同的行。
有关详细信息,请参阅此页:
答案 1 :(得分:1)
这基本上选择A中不在B中的记录。它可以工作,但您可能需要调整用于唯一标识记录的字段。在这个例子中,我使用了字段'ID',但您可能需要将其更改为A.field1 = B.field1 AND A.field2 = B.field2等。
INSERT INTO TABLEB
(
SELECT A.*
FROM TABLEA A
LEFT JOIN TABLEB B ON A.ID = B.ID
WHERE B.ID IS NULL
)
答案 2 :(得分:0)
insert into tableB (id)
select t1.id from tableA t1
where t1.id not in (select t2.id from tableB t2)