「ただし、これを変更して、CPExcl テーブルと一致し、2012 年 9 月 5日より前の状況でのみこれを削除するようにしたい」
削除する前に、まず SELECT してみてください。
([CP] not in (select distinct [CP] from CPExcl)
AND LUD < #9/5/2012#) -- before 9/5/2012. so change it to less than
OR ([CP] in (select distinct [CP] from CPExcl)
IIRC、Access の日付型はポンド記号 (#) を使用します。したがって、この 9/5/2012 を #9/5/2012# に変更します。それ以外の場合は整数になります
また、DISTINCT を使用する必要はありません。IN/NOT IN は、関連するクエリに自動的に個別に適用されます。
([CP] not in (select [CP] from CPExcl)
AND LUD < #9/5/2012#) -- before 9/5/2012. so change it to less than
OR ([CP] in (select [CP] from CPExcl)
編集
「『CP が CPExcl の列 CP にないものはすべて欲しい』が、『CP が CPExcl の CP 列にあり、LUD が 2012 年 5 月 9 日にあるものも欲しい』」
[CP] not in (select [CP] from CPExcl)
OR
(
[CP] in (select [CP] from CPExcl)
AND LUD < #9/5/2012# -- before 9/5/2012. so change it to less than
)
これを次のように短絡できます。
[CP] not in (select [CP] from CPExcl)
OR
LUD < #9/5/2012# -- before 9/5/2012. so change it to less than
念のため、DELETE の前に SELECT を実行し、ロジックが問題に適合しているかどうかを確認してください。ハッピーコーディング!ツ</p>