오라클에서 제공하는 날짜 함수중 월의 마지막날을 구하는 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;
'sql' 카테고리의 다른 글
sqlplus shell에서 실행하기. (0) | 2017.02.15 |
---|---|
Oracle hr 확인 (0) | 2015.03.06 |
그룹함수 NTILE (0) | 2014.08.01 |
sqlite에서 rownum기능.. LIMIT (0) | 2014.07.31 |
yyyymmdd를 종종 yyyy-mm-dd로 표현해야 할때.. (0) | 2014.07.17 |