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 

Table1 には存在するが Table2 には存在しない 1508 のレコードを取得しました。ここで、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 に答える