Редактировал(а) Alexandr Fokin 2023/12/16 14:12

От версии 1.1
отредактировано Alexandr Fokin
на 2020/02/29 12:15
Изменить комментарий: К данной версии нет комментариев
К версии 2.1
отредактировано Alexandr Fokin
на 2020/03/23 15:01
Изменить комментарий: К данной версии нет комментариев

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -1,0 +1,29 @@
1 +{{code language="sql"}}
2 +
3 + -- Копируем актуальные данные (за последние 3 месяца)
4 + DECLARE @dateStart datetime = DATEADD(MONTH, -3, GETDATE())
5 + DECLARE @dateStop datetime = GETDATE()
6 + DECLARE @weekStep int = 2
7 +
8 + DECLARE @curStart datetime = @dateStart
9 + DECLARE @curStop datetime = DATEADD(WEEK, @weekStep, @curStart)
10 +
11 +
12 + WHILE (1=1)
13 + BEGIN
14 + INSERT INTO dbo.NewTable ([Id], [Data])
15 + SELECT [Id], [Data]
16 + FROM [dbo].[OldTable]
17 + WHERE
18 + [DateAdded] BETWEEN @curStart AND @curStop
19 +
20 + SET @curStart = @curStop
21 + SET @curStop = DATEADD(WEEK, @weekStep, @curStart)
22 +
23 + IF (@curStart > @dateStop)
24 + BEGIN
25 + BREAK
26 + END
27 + END
28 +
29 +{{/code}}