将不同的条目插入数据库

时间:2009-06-25 04:48:28

标签: mysql

我有两个具有完全相同字段的表。表A包含7160条记录和表B 7130条记录。现在我想将表A中的不同记录插入表B,这样B中不应该有任何重复的条目。我应该怎么做呢?

3 个答案:

答案 0 :(得分:1)

您可以使用“union”查询将多个表的结果合并到一个结果集中。 “union”只会从所有表中返回不同的行。

有关详细信息,请参阅此页:

http://www.tutorialspoint.com/mysql/mysql-union-keyword.htm

答案 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)