我有2个表 - 第一个表包含所有唯一数据(列:标题,艺术家,专辑)。第二个表格中有重复的数据或人们每天收听RSS订阅源。
我想将table2中的所有数据保存到table1,但前提是table1中不存在table2的行。我想要一个SQL查询,它将返回不在table1中的table2的所有行 - 如何?
答案 0 :(得分:4)
这样的事情,可能是:
INSERT INTO Table1
(columns)
SELECT columns
FROM Table1
WHERE Table2.UniqueColumn NOT IN (SELECT UniqueColumn FROM Table1)
答案 1 :(得分:1)
假设Table2中存在列title, artist, album
,并且您想要添加Table2中所有行,其中Table1中不存在这三者的给定组合,您可以执行以下操作:
Insert Table1( title, artist, album, ... )
Select title, artist, album, ...
From Table2
Where ( title, artist, album ) Not In (
Select title, artist, album
From Table1
)