오라클 날짜 계산,어제 ,내일,1시간 후,월요일 등 날짜 구하기

오라클 날짜 계산,어제 ,내일,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