sql
오라클 월 마지막날 첫째날 구하기
무세1
2014. 9. 12. 15:26
오라클에서 제공하는 날짜 함수중 월의 마지막날을 구하는 LAST_DAY 함수가 있다.
> SELECT TO_CHAR(LAST_DAY(SYSDATE),'YYYYMMDD') MONTH_LAST_DAY FROM DUAL
MONTH_LAST_DAY
------------------
20140930
그러면 월의 첫째날은 어떻게 구해야 할까?
월의 마지막 날에서 하루를 더하면 다음달의 첫날이 된다. 그리고 ADD_MONTHS 라는 함수를 이용해서 한달을 빼면 월의 첫째날을 구할 수 있다.
> SELECT TO_CHAR(ADD_MONTHS(LAST_DAY(SYSDATE)+1,-1),'YYYYMMDD') MONTH_FIRST_DAY
FROM DUAL
MONTH_FIRST_DAY
------------------
20140901
* 이 방법이 더 단순하네요..
select trunc(sysdate,'MM') from dual;