Sql server 2008 r2 如何清除超过6个月的数据?
我创建了一个SQL作业来清除保留期超过6个月的数据,但它正在从表中删除数据 以下是我的脚本的外观:Sql server 2008 r2 如何清除超过6个月的数据?,sql-server-2008-r2,delete-row,Sql Server 2008 R2,Delete Row,我创建了一个SQL作业来清除保留期超过6个月的数据,但它正在从表中删除数据 以下是我的脚本的外观: DECLARE @Retention_Date DATETIME = DATEADD(MM, -6, GETDATE()) PRINT 'Step Start: Purge' DELETE FROM DBA.PD_WaitStats WHERE Created_On > @Retention_Date DECLARE @StepEndTime DATETIME
DECLARE @Retention_Date DATETIME = DATEADD(MM, -6, GETDATE())
PRINT 'Step Start: Purge'
DELETE FROM DBA.PD_WaitStats WHERE Created_On > @Retention_Date
DECLARE @StepEndTime DATETIME = GETDATE()
PRINT 'Step End Time : ' + CONVERT(VARCHAR, @StepEndTime, 109)
GO
如何删除早于x个月前的数据?简单到:-
DELETE FROM DBA.PD_WaitStats WHERE Created_On < @Retention_Date
DELETE FROM DBA.PD_WaitStats,其中创建于<@Retention_Date
请注意小于符号。您想删除较旧的数据,对吗?在删除这样的记录时是否会有性能损失?对于较大的数据集,按日期范围分区不是更好的选择吗