我正面临一个场景,我需要从表中删除记录。使用查询删除记录
方案是: 第一个表具有一些日期值,第二个表仅包含年终(日期)记录。如果第一个表的值不在第二个表中,我需要从第一个表中删除这个记录。
下面是在第一表
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
以下的时间值是在第二表中的日期值
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 ')不在第二个表格中。因此我需要在第一个表格中单独删除这条记录。
我正在使用以下查询,但没有得到所需的结果。
查询使用
Select tmp.* from #temp tmp
Inner Join #temp1 tmp1
On tmp.Val_DT != tmp1.ye_dt
Where DATEPART(mm,tmp.Val_dt) = 12
注: 第二个表只包含单独的年终日期。
如何实现这一目标?
第一张桌子的'2009-06-30 00:00:00.000'和'2011-11-30 00:00:00.000'也不在第二张桌子上。为什么不删除它们呢? – 2012-04-05 10:08:41