오라클 JOB 을 잡을 때
SUBMIT을 넣을 데이터로 활용하기 위한 SQL
/* 최초 배치 시간 지정 */
-- 특정 기간 배치설정(매월 3일 3시 30분 ~ 7일 3시 30분)
-- 오라클 JOB의 INTERVAL이 최대 200 이기 때문에 최대한 붙여써야함.
SELECT CASE
WHEN TO_CHAR(SYSDATE, 'DD') >= '03' AND TO_CHAR(SYSDATE, 'DD') < '07' THEN TRUNC(SYSDATE, 'DD')+1+3/24/60+30/24/60
ELES ADD_MONTHS(TRUNC(SYSDATE, 'MM', +1)+2+3/24+30/24/60
END
FROM DUAL
;
-- 월별 3:30 배치
SELECT TRUNC(SYSDATE, 'DD') + 3/24 + 30/24/60 FROM DUAL;
-- 시간별(정각)
SELECT TRUNC(SYSDATE, 'HH24') +1/24 FROM DUAL;
-- 시간별(정각+3)
SELECT TRUNC(SYSDATE, 'HH24') +1/24 +3/24/60 FROM DUAL;
-- 분당 (1, 5, 10)
SELECT TRUNC(SYSDATE, 'HH24') +1/24 +1/24/60 FROM DUAL;
SELECT TRUNC(SYSDATE, 'HH24') +1/24 +5/24/60 FROM DUAL;
SELECT TRUNC(SYSDATE, 'HH24') +1/24 +10/24/60 FROM DUAL;
-- 다음 일요일
SELECT SYSDATE - TO_CHAR(SYSDATE, 'D') + 8 AS NEXT_SUNDAY
/* 다음 배치 시간 */
-- 월별
SELECT ADD_MONTHS(TRUNC(SYSDATE, 'DD'), +1) +3/24 +30/24/60 FROM DUAL;
-- 분당
SELECT TRUNC(SYSDATE, 'MI')+1/24/60 FROM DUAL;
SELECT TRUNC(SYSDATE, 'MI')+5/24/60 FROM DUAL;
SELECT TRUNC(SYSDATE, 'MI')+10/24/60 FROM DUAL;
'DB > 오라클' 카테고리의 다른 글
[Oracle] 여러 행을 한 칼럼으로 바꾸기(XML) (0) | 2015.10.12 |
---|---|
[오라클] 열을 한 컬럼에 (0) | 2015.07.06 |
[Oracle] 테이블 / 컬럼 / 코멘트 정보 보기 (0) | 2015.06.08 |
[오라클] 테이블 컬럼 정보 확인 쿼리 (0) | 2015.05.12 |
[오라클] 가로를 세로로 묶기 (WM_CONCAT) (0) | 2015.01.20 |
WRITTEN BY