1

私は2つのテーブルを持っています

列のあるarticlesdownloadtrack -id、articleid、createdtime、modifiedtime

列のある記事-id、articlename、articleURL、createdtime、modifiedtime

articlesdownloadtrackの一部のエントリ(articlesdownloadtrack.articleid は、articlesでは使用できません(移行プロセス中に欠落しています)。そのような記録を削除したい。

クエリを使用しています

delete from articlesdownloadtrack where articleid not in(select id from articles); 

ただし、articlesdownloadtrackには、articleidがNULLであるレコードがいくつかあり、このクエリの実行時に削除してはならないため、articleidがnullではないレコードのみを削除するように制約を追加する必要があります。

4

1 に答える 1

3

@njk で述べたように、これを試してください:

 delete 
     from articlesdownloadtrack 
 where 
    (
     articleid IS NOT NULL AND articleid not in(select id from articles)
    )
于 2013-01-09T04:34:31.647 に答える