0
I have two tables Table1 and Table2. I compared thes tables using the query below. SELECT 

Select Table1.ID
     FROM Table1
     LEFT OUTER JOIN Table2 
    ON Table1.ID =Table2.ID
     WHERE Table2.ID IS NULL 

并得到 1508 条存在于 Table1 但不存在于 Table2 中的记录。现在我想删除 Table2 中的这些记录。这是我在下面使用的代码

 DELETE Table1.*
    FROM Table1
     LEFT OUTER JOIN Table2 
    ON Table1.ID =Table2.ID
     WHERE Table2.ID IS NULL 

这是我得到的错误无法从指定的表中删除。我意识到我的sql有问题,但是在哪里。我认为这个 DELETE 是指定一个表而不是表。

4

1 回答 1

1

试试这个:

DELETE FROM Table1
WHERE ID NOT IN
(
    SELECT ID
    FROM table2
)
于 2012-10-17T08:07:38.437 回答