데이터베이스/Oracle
개발노트 :: 오라클(Oracle) 테이블 이전 데이터 조회 AS OF TIMESTAMP
TLL
2019. 3. 7. 11:48
오라클[Oracle] 테이블 이전 데이터 조회 AS OF TIMESTAMP
DB를 잘못 commit를 하거나 잘못된 실행으로 데이터가 변경이 되어서 이전 데이터를 찾는 방법입니다.
1. 현재시간보다 이전시간 조회
SELECT * FROM TABLE AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE) where 1=1 -- 10분 이전 데이터 조회 SELECT * FROM TABLE AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '1' HOUR) where 1=1 -- 1시간 이전 데이터 조회 SELECT * FROM TABLE AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '1' DAY) where 1=1 -- 하루전 데이터 조회 |
2. 특정 날짜로 조회
SELECT * FROM TABLE AS OF TIMESTAMP(TO_DATE('20190101000000', 'YYYYMMDDHH24MISS')) where 1=1 -- 2019년 1월 1일 조회 |
3. 데이터 복구
FLASHBACK TABLE TABLE TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '10' MINUTE); -- 10분이전 데이터로 복구 |