我有一个简单的sql查询,我打算把它放在一个存储过程中,以便将旧数据从一个表移到一个存档表中。我知道有很多方法可以做到这一点,但以下是我想到的:
DECLARE @days INT
SELECT Product.* INTO
ProductArchive
WHERE OrderDateTimeUTC = DATEADD(d, -(@days), GETUTCDATE())
这样做的目的是使其成为一个sql作业,以便每隔一段时间运行。这方面有“最佳实践”吗?主表在任何时候只有少于2000行。
我有一个简单的sql查询,我打算把它放在一个存储过程中,以便将旧数据从一个表移到一个存档表中。我知道有很多方法可以做到这一点,但以下是我想到的:
DECLARE @days INT
SELECT Product.* INTO
ProductArchive
WHERE OrderDateTimeUTC = DATEADD(d, -(@days), GETUTCDATE())
这样做的目的是使其成为一个sql作业,以便每隔一段时间运行。这方面有“最佳实践”吗?主表在任何时候只有少于2000行。
1条答案
按热度按时间cgfeq70w1#
好的,下面是我如何解决我自己的问题,即将数据从一个表移动到一个存档表中,然后从主表中删除。我基本上使用了合并和删除以及临时表。我将查询放在一个存储过程中