繁体   English   中英

如何从一个表中选择另一个表中不存在的行?

[英]How can I select rows from a table that don't exist in another table?

我有2个表-第一个表包含所有唯一数据(列:标题,艺术家,专辑)。 第二个表有重复的数据,或者每天都有人在收听RSS提要。

我想将所有数据从table2保存到table1,但前提是table1中不存在table2的行。 我想要一个SQL查询,该查询将返回table2中没有的所有table2行-怎么办?

大概是这样的:

INSERT INTO Table1
(columns)
SELECT columns
FROM Table1
WHERE Table2.UniqueColumn NOT IN (SELECT UniqueColumn FROM Table1)

假设表2中存在title, artist, albumtitle, artist, album并且您想要添加表2中所有这三行的给定组合在表1中不存在的所有行,则可以执行以下操作:

Insert Table1( title, artist, album, ... )
Select title, artist, album, ...
From Table2
Where ( title, artist, album ) Not In   (
                                        Select title, artist, album
                                        From Table1
                                        )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM