テーブルからレコードを削除する必要があるシナリオに直面しています。
シナリオは次のとおりです。最初のテーブルにはいくつかの日付値があり、2 番目のテーブルには年末 (日付) レコードのみが含まれています。最初のテーブルの値が 2 番目のテーブルにない場合、最初のテーブルからこのレコードを削除する必要があります。
以下は、最初のテーブルの日付値です
2009-06-30 00:00:00.000
2009-12-31 00:00:00.000
2011-11-30 00:00:00.000
2011-12-31 00:00:00.000
以下は、2 番目のテーブルの日付値です。
2005-12-31 00:00:00.000
2006-12-31 00:00:00.000
2007-12-31 00:00:00.000
2009-12-31 00:00:00.000
ここで両方のテーブルを比較すると、最初のテーブルの日付値 ('2011-12-31 00:00:00.000') は 2 番目のテーブルにはありません。したがって、最初のテーブルでこのレコードを単独で削除する必要があります。
次のクエリを使用していますが、必要な結果が得られません。
使用したクエリ
Select tmp.* from #temp tmp
Inner Join #temp1 tmp1
On tmp.Val_DT != tmp1.ye_dt
Where DATEPART(mm,tmp.Val_dt) = 12
注: 2 番目の表には、年末の日付のみが含まれています。
これを達成する方法は?