SQL Server删除记录比去年更多的时间

时间:2016-11-28 12:20:09

标签: sql sql-server sql-server-2012

我正在使用SQL Server 2012.我需要删除比去年更多的数据。

目前为止,请删除大于28/11 / 2015 的所有记录。

虽然它正在滚动,但它将成为每天运行的SP的一部分,因此每天都会检查当前日期并删除。这样做的最佳方式是什么?

DELETE tblmytable
where MyDateField > GETDATE ()

如何更改为说>从去年开始今天?

3 个答案:

答案 0 :(得分:5)

使用dateadd

DELETE 
from tblmytable
where MyDateField > dateadd(yy, -1, GETDATE ())

答案 1 :(得分:0)

知道了,这就是答案:

Delete tblmytable
where MyDateField > DATEADD(year, -1, GETDATE())

答案 2 :(得分:-2)

你可以试试这个:

delete from table
where dateField > dateadd(yy, -1, getdate())