특정 테이블에 히스토리를 관리할 일 등이 종종있다.
IUD에 트리거를 걸고 다른 테이블(이력관리용)에 계속 INSERT를 하면 된다.
단지, 이력 테이블에는 시작일과 종료일을 두어 나중에 "특정시점" 데이터를 보기 쉽게할 수 있다.
CREATE TABLE #TMP
(
START_DT DATETIME
, END_DT DATETIME
)
INSERT INTO #TMP
VALUES
(GETDATE(), DATEADD(M, 1, GETDATE()))
,(DATEADD(M, -2, GETDATE()),DATEADD(M, -1, GETDATE()))
,(DATEADD(M, -5, GETDATE()),DATEADD(M, -4, GETDATE()))
SELECT * FROM #TMP
WHERE DATEADD(M, -5, GETDATE()) BETWEEN START_DT AND END_DT
DROP TABLE #TMP
예를 들면 위와 같은 형태로 만들어서 해당일을 사용한 특정시점의 쿼리가 가능하다.