所以我已經存盤了proc,它將用于檢索將長期匯入另一個表的資料。'2020-01-01' 到 '2022-02-28'我想分 7 天分批執行此操作。我不想手動運行 PROC 并在 2 年內通過 7 天范圍。
偽示例:
INSERT INTO dbo.MyImportedData
INSERT INTO dbo.MyImportedData
EXEC [dbo].[MyLongRangeData]
@StartDate = @StartDate,
@EndDate = @EndDate -- First 7 Day Period (2020-01-01 to 2020-01-07)
INSERT INTO dbo.MyImportedData
EXEC [dbo].[MyLongRangeData]
@StartDate = @StartDate,
@EndDate = @EndDate -- second 7 Day Period (2020-01-08 to 2020-01-14) --Doing this until 2022-02-28.
提前感謝您的幫助。
uj5u.com熱心網友回復:
假設您只需要簡單的 7 天塊并且不需要與一年的第一天或會計期間對齊,您可以執行一個簡單的回圈,如下所示:
DECLARE @d date = '20200101', @e date;
WHILE @d <= '20220228'
BEGIN
SET @e = DATEADD(DAY, 6, @d);
INSERT dbo.MyImportedData(<always list columns here!>)
EXEC [dbo].[MyLongRangeData] @StartDate = @d, @EndDate = @e;
SET @d = DATEADD(DAY, 7, @d);
END
但更好的是重新撰寫程式(或創建一個新程式)以在任何日期范圍內為您處理 7 天的資料塊,這樣您就不必呼叫 100 次。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/447899.html
