2. months_betweend : 날짜와 날짜 사이의 개월 계산
(1월 1일, 1월 31일 을 모두 1개월로 계산하므로 사용에 유의)
3. add_months :날짜에 개월을 더한 날짜
4. next_date : 날짜후의 첫 월요일 날짜
5. last_day : 월의 마지막 날짜
6. round : 날짜 반올림
7. trunc : 날짜 내림
참고 : 날짜 형식
YYYY(RRRR) : 네 자리 연도(숫자)
YEAR : 연도 (문자)
MM : 두자리 값으로 나타낸 달
MONTH : 달 전체 이름(영문)
MON : 세 자 약어로 나타난 달(영문)
DY : 세 자 약어로 나타낸 요일
DAY : 요일 전체 이름
DD : 숫자로 나타낸 달
AM / PM : 오전/오후
A.M / P.M. : 마침표 포함 오전/오후
HH / HH12 / HH24 : 시간 표시
MI : 분
SS : 초
SSSSS : 자정부터의 초
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 |
SQL> select sysdate from dual; SYSDATE ------------ 04-JAN-12
1 select profno, hiredate, months_between(sysdate, hiredate), add_months(hiredate, 6)
2* from professor SQL> /
PROFNO HIREDATE MONTHS_BETWEEN(SYSDATE,HIREDATE) ADD_MONTHS(H ---------- ------------ -------------------------------- ------------
9901 24-JUN-82 354.382304 24- DEC -82
9902 12-APR-95 200.7694 12-OCT-95
9903 17-MAY-93 223.60811 17-NOV-93
9904 02- DEC -98 157.091981 02-JUN-99
9905 08-JAN-86 311.898433 08-JUL-86
9906 13-SEP-88 279.737142 13-MAR-89
9907 01-JUN-01 127.124239 01- DEC -01
9908 18-NOV-90 253.575852 18-MAY-91 8 rows selected. SQL> select sysdate, last_day(sysdate), next_day(sysdate, 'SAT' )
2 from dual; SYSDATE LAST_DAY(SYS NEXT_DAY(SYS ------------ ------------ ------------ 04-JAN-12 31-JAN-12 07-JAN-12 SQL> select to_char(sysdate, 'yy/mm/dd hh24:mi:ss' ) normal,
2 to_char(trunc(sysdate), 'yy/mm/dd hh24:mi:ss' ) trunc,
3 to_char(round(sysdate), 'yy/mm/dd hh24:mi:ss' ) round
4 from dual; NORMAL TRUNC ROUND ----------------- ----------------- ----------------- 12/01/04 20:29:04 12/01/04 00:00:00 12/01/05 00:00:00 |
참고 : 영문명으로 된 월을 가져올 때
1select
to_char(sysdate,
'MON'
,
'NLS_DATE_LANGUAGE=ENGLISH'
)
from
dual;