dbms:oracle:devel:oracledatefunction
문서의 이전 판입니다!
오라클 날짜 함수
날짜 함수
| 문형 | 사용 예 | |
|---|---|---|
| 문형 | 결과 | |
| SYSDATE | SYSDATE | 99/05/10 |
| SYSTIMESTAMP | SYSTIMESTAMP | 07/03/07 10:55:24.260425 +09:00 |
| LAST_DAY(날짜값) | LAST_DAY('98/02/17') | 98/02/28 |
| NEXT_DAY(날짜값, 요일 문자) | NEXT_DAY('98/02/17','FRIDAY') | 98/02/20 |
| MONTHS_BETWEEN (날짜값1,날짜값2) | MONTHS_BETWEEN('97/04/26','95/06/22') | 21.1290323 |
| ADD_MONTHS(날짜값, 숫자값) | ADD_MONTHS('95/06/22',21) | 97/04/22 |
| ROUND(날짜값, 자리수) | 현재 날짜가 1999년 5월 10일이라 가정하자. ROUND(SYSDATE,'MONTH') | 99/05/01 |
| TRUNC(날짜값, 자리수) | 현재 날짜가 1999년 5월 10일이라 가정하자. TRUNC(SYSDATE,'YEAR') | 99/01/01 |
| EXTRACT(날짜 및 시각 FROM 날짜값) | 현재 날짜가 1999년 5월 10일이라 가정하자. EXTRACT ( YEAR FROM SYSDATE ) | 1999 |
| TO_YMINTERVAL(문자값) | 현재 날짜가 1999년 5월 10일이라 가정하자. SYSDATE + TO_YMINTERVAL('01-02') | 00/07/10 |
- SYSDATE에서 시, 분, 초까지 출력하고 싶은 경우는 변환함수를 사용해야 합니다.
SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
- Oracle10g 부터는 SYSDATE 대신 SYSTIMESTAMP 함수(Database의 TimeZone을 포함한 시스템 날짜)를 이용하면 좀 더 자세히 볼 수 있다.
- MONTHS_BETWEEN 함수를 쓰는 경우는 큰 날짜를 앞에 써야 양수로 계산됩니다.
- NEXT_DAY는 입력한 날짜값(DATE) 다음 주의 요일날짜를 보여줍니다.
요일문자는 LANG 설정에 따라 (월요일..일요일)도 가능하나 MONDAY,TUESDAY 를 추천합니다.
날짜에 대한 산술 연산
| 연산 | 결과치 | 사용목적 |
|---|---|---|
| 날짜 + 숫자 | 날짜 | 특정한 날로부터 몇일 후의 날짜 계산 |
| 날짜 - 숫자 | 날짜 | 특정한 날로부터 몇일 전의 날짜 계산 |
| 날짜 - 날짜 | 숫자 | 두 날짜사이의 차이를 숫자로 계산 |
| 날짜 + 숫자/24 | 날짜 | 날짜에 몇 시간 후를 계산 |
- 날짜 + 날짜 연산은 불가능하다.
- 월에 대한 연산은 MONTHS_BETWEEN이나 ADD_MONTHS함수를 통하여 개월차이나 몇 개월 후의 날짜값을 구할 수 있다.
- 년(Year), 주(Week), 일(Day)등은 따로 제공되는 함수가 없습니다.
이런 경우에 년차나 특정날짜로부터 며칠 후의 날짜값 등을 계산하고 싶으면 바로 날짜값에 산술연산을 함으로써 가능합니다.
날짜함수에서 사용할 수 있는 포멧
| 형식 | 설명 |
|---|---|
| yy | 년도를 2자리로 |
| yyyy | 년도를 4자리로 |
| year | 영어 철자로 표시 |
| mm | 월을 표시(01-12) |
| mon | 월을 표시(DEC….):약자로 나온다. |
| month | 월을 표시(1월,2월,….혹은 ,DECEMBER) |
| d | 일을 표시(주에 대한 일) |
| dd | 일을 표시 (월에 대한 일) |
| ddd | 일을 표시 (년에 대한 일) |
| Q | 분기를 구한다. |
| DAY | 요일 (월요일) |
| DY | 요일(월) |
| HH & HH12 | 시간을 12시간제로 |
| HH24 | 24시간제로 |
| MI | 분 |
| SS | 초 |
| AM & PM & A.M & P.M | 12시간제 일때 오전 오후를 표시 |
접미사로 사용하는 포맷
| 형식 | 설명 | 예시 |
|---|---|---|
| TH | 서수로 표시 | 4 → DD →4 4→ DDTH → 4TH |
| SP | 철자로 표시 | 4 →DDSP → FOUR |
| SPTH & THSP | 4 → DDSPTH → FOURTH | |
| 근무한 년월 수 | column “근무년수” Format a 14; |
dbms/oracle/devel/oracledatefunction.1173234281.txt.gz · 마지막으로 수정됨: 저자 starlits
