小编典典

如何删除另一个表中存在的行?

sql

我有两张桌子。主表是“ CompleteEmailListJuly11”,第二个表是“
CurrentCustomersEmailJuly11”。我想要删除CurrentCustomersEmailJuly11基于电子邮件的CompleteEmailListJuly11表中的行。

我已经在“删除”示例中尝试过此操作,但是它并没有做任何与我要执行的操作接近的操作。这只会向我显示数据库中已存在的电子邮件,而不会显示未匹配的电子邮件列表。

DELETE * FROM CompleteEmailListJuly11 AS i 
WHERE EXISTS ( 
    SELECT 1 FROM CurrentCustomersEmailJuly11 
    WHERE CurrentCustomersEmailJuly11.email = i.EmailAddress
)

非常感谢您的帮助。


阅读 215

收藏
2021-04-22

共1个答案

小编典典

这是我认为您需要的查询:

DELETE FROM CompleteEmailListJuly11
WHERE EmailAddress IN (SELECT email FROM CurrentCustomersEmailJuly11)

ps:DELETE查询不会删除单个字段,而只会删除整个行,因此*不是必需的,您还需要“执行”此查询,而不是“ Previewing”或“
Exporting”

2021-04-22