오라클 날짜 계산,어제 ,내일,1시간 후,월요일 등 날짜 구하기
오라클을 하면서 가장 많이 검색되는 부분이 날짜가 아닐까 합니다. 많이 사용되면서 외우도 잘 기억나지 않아
검색해서 사용하는 경우가 많습니다.
오늘날짜 부터 시작해서, 내일, 어제, 3개월 후 , 1년 후 두 날짜의 계산, 월요일 등
날짜에 관해서 구하는 방법을 알아보겠습니다.
--현재 날짜 구하기
1 |
SELECT SYSDATE FROM DUAL; |
cs |
--어제 날짜 구하기
1 |
SELECT SYSDATE - 1 FROM DUAL; |
cs |
--내일 날짜 구하기
1 |
SELECT SYSDATE + 1 FROM DUAL; |
cs |
--1분전
1 |
SELECT SYSDATE - (1/24/60) FROM DUAL; |
cs |
--1분 후
1 |
SELECT SYSDATE + (1/24/60) FROM DUAL; |
cs |
--1시간 후
1 |
SELECT SYSDATE + (1/24) FROM DUAL; |
cs |
--현재 날짜에 23시 59분 59 초 만들기
1 |
SELECT TRUNC(SYSDATE) +0.99999 FROM DUAL ; |
cs |
-- 3개월 전 날짜
1 |
SELECT ADD_MONTHS(SYSDATE,-3) FROM DUAL; |
cs |
-- 3개월 후 날짜
1 |
SELECT ADD_MONTHS(SYSDATE,3) FROM DUAL; |
cs |
-- 1년 전 날짜
1 |
SELECT ADD_MONTHS(SYSDATE,-12) FROM DUAL; |
cs |
-- 1년 후 날짜
1 |
SELECT ADD_MONTHS(SYSDATE,12) FROM DUAL; |
cs |
-- 이번달 마지말 날짜
1 |
SELECT LAST_DAY(TRUNC(SYSDATE)) FROM DUAL; |
cs |
-- 이번달 시작일
1 |
SELECT TO_DATE( TO_CHAR(SYSDATE,'YYYYMM') , 'YYYYMM' ) FROM DUAL; |
cs |
-- 다음달 시작일
1 |
SELECT TO_DATE( TO_CHAR(ADD_MONTHS(SYSDATE,1),'YYYYMM') , 'YYYYMM' ) FROM DUAL; |
cs |
-- 두날짜 차이 일계산
1 |
SELECT TO_DATE('2019-10-10') - TO_DATE('2019-10-05') FROM DUAL; |
cs |
-- 두날짜 개월수 계산
1 |
SELECT MONTHS_BETWEEN('2019-10-11','2019-01-10') FROM DUAL; |
cs |
--이번주 월요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') FROM DUAL; |
cs |
--이번주 일요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') +6 FROM DUAL; |
cs |
중간 요일은 +1씩 늘려가면 됩니다.
--지난주 월요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') - 7 FROM DUAL; |
cs |
--지난주 일요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') -7 + 6 FROM DUAL; |
cs |
--다음주 월요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') + 7 FROM DUAL; |
cs |
--다음주 일요일 날자
1 |
SELECT TRUNC(SYSDATE,'IW') + 7 + 6 FROM DUAL; |
cs |