[오라클(Oracle) 기초] 날짜 함수 ( SYSDATE / MONTHS_BETWEEN / ADD_MONTHS / NEXT_DAY / LAST_DAY 함수)
1. SYSDATE 함수
2. MONTHS_BETWEEN 함수
3. ADD_MONTHS 함수
4. NEXT_DAY 함수
5. LAST_DAY 함수
1. SYSDATE 함수
현재의 날짜를 반환하는 함수
1
2
3
4
|
select sysdate, ---- 22/04/13
sysdate - 1, ---- 22/04/12
sysdate + 1 ---- 22/04/14
from dual;
|
cs |
2. MONTHS_BETWEEN 함수
두 날짜 사이의 개월 수를 계산하는 함수
3. ADD_MONTHS 함수
지정 날짜에 특정 개월 수를 더해주는 함수이다.
1
|
ADD_MONTHS(date, 개월 수)
|
cs |
ex) 현재일이 2022/04/13 일 때
1
2
3
4
5
|
select add_months(sysdate, 3), ---- 22/07/13
add_months(sysdate, 6), ---- 22/10/13
add_months(sysdate, -3), ---- 22/01/13
add_months(sysdate, -6) ---- 21/10/13
from dual;
|
cs |
ex) professor 테이블에서 교수의 이름과 입사일, 그리고 입사일에 6개월을 더한 날짜를 계산하여 출력(입사일의 칼럼명은 '입사일'로, 입사일에 6개월을 더한 날짜의 칼럼명은 'h_date_6'으로 지정)
형식은 위와 같이 나타낸다. 만약 date에 sysdate를, 요일에 수요일(wed)을 넣으면 오늘 이후 최초로 돌아오는 수요일 날짜를 계산하여 반환한다. 또한 mon, monday, wed, wednesday 등 문자뿐 아니라 숫자로도 입력할 수 있다. 오라클에서는 일요일이 1부터 시작하여 월요일이 2, 화요일 3, 수요일 4,..... 토요일이 7의 값을 가진다.
1
2
3
4
5
6
|
select next_day(sysdate, 'wed'), ---- 22/04/20
next_day(sysdate, 'wednesday'), ---- 22/04/20
next_day(sysdate, 4), ---- 22/04/20
next_day(sysdate, 'mon'), ---- 22/04/18
next_day(sysdate, 2) ---- 22/04/18
from dual;
|
cs |
ex) professor 테이블에서 교수의 이름과 입사일, 입사일 이후 최초의 토요일을 계산하여 출력
1
2
|
select name, hiredate, next_day(hiredate, 7)
from professor;
|
cs |
5. LAST_DAY 함수
해당 날짜가 속한 달의 마지막 날짜를 계산하여 반환한다. 예를 들어 2020/01/02는 2020/01/31로, 2022/04/13은 2022/04/30으로 반환한다.
1
|
last_day(date)
|
cs |
1
2
3
4
5
|
select last_day(sysdate), ---- 22/04/30
last_day('2022/04/12'), ---- 22/04/30
last_day('2021/01/25'), ---- 21/01/31
last_day('2025/02/01') ---- 25/02/28
from dual;
|
cs |
[오라클(Oracle) 기초] 날짜 함수 ( SYSDATE / MONTHS_BETWEEN / ADD_MONTHS / NEXT_DAY / LAST_DAY 함수)
-요약-
1. SYSDATE 함수
- 현재 날짜를 반환
- select sysdate from dual;
2. MONTHS_BETWEEN 함수
- 두 날짜 사이의 개월 수를 계산
- months_between(date1, date2)
3. ADD_MONTHS 함수
- 날짜에 개월 수를 더하여 반환
- add_months(date, 개월 수)
4. NEXT_DAY 함수
- 해당 날짜 후의 첫 번째 특정 요일을 계산하여 반환
- next_day(date, 요일 or 숫자)
5. LAST_DAY 함수
- 해당 날짜가 속한 달의 마지막 날짜를 계산
- last_day(date)
'Database > Oracle' 카테고리의 다른 글
[오라클(Oracle) ] 일반 함수( nvl / decode / case 함수) (0) | 2022.04.13 |
---|---|
[오라클(Oracle) ] 데이터 타입 변환 ( TO_CHAR / TO_DATE / TO_NUMBER) (0) | 2022.04.13 |
[오라클(Oracle) 기초] 숫자 함수( ABS / ROUND / TRUNC / MOD / CEIL / FLOOR 함수 ) (0) | 2022.04.13 |
[오라클(Oracle) 기초] 문자 함수(대소문자 변환 / 길이 반환 / SUBSTR / INSTR 함수) (0) | 2022.04.13 |
[오라클(Oracle) 기초] 정렬(order by / asc / desc) (0) | 2022.04.12 |
댓글