본문 바로가기

MSSQL

[MSSQL] While문으로 일별, 시간별 저장프로시저(집계) 실행

반응형

일별 프로시저 실행

DECLARE @START_DATE DATETIME = '2021-07-06'     -- 시작날짜
DECLARE @END_DATE DATETIME = '2021-07-11'       -- 종료날짜
DECLARE @DATE_STRING VARCHAR(10) = NULL         -- 프로시저에서 VARCHAR형태로 받기 때문에 한번 변형해주기 위한 변수
 
WHILE @START_DATE <= @END_DATE
    BEGIN
        SET @DATE_STRING = (SELECT CONVERT(VARCHAR(10),@START_DATE,23))
	
		EXEC [저장프로시저] @DATE_STRING

		PRINT @DATE_STRING

		SET @START_DATE = (SELECT CONVERT(VARCHAR(10),DATEADD(dd,1,@START_DATE),23))
    END

시간별 프로시저 실행

DECLARE @START_DATE DATETIME = '2021-11-26 00:00:00'     -- 시작시간
DECLARE @END_DATE DATETIME = '2021-12-01 23:00:00'       -- 종료시간
DECLARE @DATE_STRING VARCHAR(19) = NULL         	-- 프로시저에서 VARCHAR형태로 받기 때문에 한번 변형해주기 위한 변수

WHILE @START_DATE <= @END_DATE
    BEGIN
        SET @DATE_STRING = (SELECT CONVERT(VARCHAR(19),@START_DATE,20))
        
		EXEC [저장프로시저] @DATE_STRING

		PRINT @DATE_STRING

		SET @START_DATE = (SELECT CONVERT(VARCHAR(19),DATEADD(hh,1,@START_DATE),20))
    END

References

https://mirwebma.tistory.com/190

반응형