목차
날짜 함수
날짜 데이터 타입에 사용하기 위한 함수이다.
더보기
RR 과 YY 타입 비교
YY 형식은 현재 세기로 계산한다.
RR 형식 계산 공식
현재년도(뒤 두자리) | 명시된 년도(뒤 두자리) | RR형식 반환년도 |
00~49 | 00~49 | 현재 세기 |
00~49 | 50~99 | 이전 세기 |
50~99 | 00~49 | 다음 세기 |
50~99 | 50~99 | 현재 세기 |
더보기
기본적인 날짜 연산 결과
연산 | 결과 | 설명 |
날짜 + 숫자 | 날짜 | 날짜에 일수를 더하여 반환한다. |
날짜 - 숫자 | 날짜 | 날짜에 일수를 빼고 반환한다. |
날짜 - 날짜 | 숫자(일수) | 두 날짜의 차이(일수)를 반환한다. |
날짜 + 숫자/24 | 날짜 | 날짜에 시간을 더한다. |
SYSDATE
DB서버에 설정된 날짜를 반환한다.
SELECT SYSDATE
FROM dual;
SELECT SYSDATE 오늘, SYSDATE+1 내일, SYSDATE-1 어제
FROM dual;
MONTHS_BETWEEN( date1, date2 )
두 날짜 사이의 월수를 계산하여 반환한다.
SELECT MONTHS_BETWEEN(sysdate, '23/07/29')
FROM DUAL;
ADD_MONTHS( date1, n )
특정 개월 수를 더한 날짜를 계산하여 반환한다. 음수값일 경우, 뺀 날짜를 반환한다.
SELECT sysdate 현재, ADD_MONTHS(sysdate,1) 다음달,
ADD_MONTHS(sysdate,-1) 이전달
FROM dual;
NEXT_DAY( date1, 'string'| n )
명시된 날짜로부터 다음 요일에 대한 날짜를 반환한다.
SELECT NEXT_DAY(SYSDATE, '금')
FROM DUAL;
-- 일요일: 1 월요일: 2...툐요일: 7
LAST_DAY ( date1)
지정된 월의 마지막 날짜를 반환한다. 윤년 및 평년 모두 자동으로 계산된다.
SELECT LAST_DAY(SYSDATE)
FROM DUAL;
ROUND( date1 , 'YEAR') , ROUND(date1, 'MONTH')
날짜를 가장 가까운 년도 또는 월로 반올림하여 반환하다.
SELECT
ROUND(SYSDATE,'YEAR'),
ROUND(SYSDATE,'MONTH')
FROM DUAL;
TRUNC( date1 , 'YEAR') , TRUNC((date1, 'MONTH')
날짜를 가장 가까운 년도 또는 월로 절삭하여 반환한다.
SELECT
TRUNC(SYSDATE,'YEAR'),
TRUNC(SYSDATE,'MONTH')
FROM DUAL;
'Database > Oracle' 카테고리의 다른 글
Oracle Datebase - 함수_단일행 함수_조건 함수 (0) | 2023.07.31 |
---|---|
Oracle Datebase - 함수_단일행 함수_변환 함수 (0) | 2023.07.30 |
Oracle Datebase - 함수_단일행 함수_숫자처리 함수 (0) | 2023.07.29 |
Oracle Datebase - 함수_단일행 함수_문자처리함수 (0) | 2023.07.28 |
Oracle database - SQL함수 (0) | 2023.07.28 |
날짜 함수
날짜 데이터 타입에 사용하기 위한 함수이다.
더보기
RR 과 YY 타입 비교
YY 형식은 현재 세기로 계산한다.
RR 형식 계산 공식
현재년도(뒤 두자리) | 명시된 년도(뒤 두자리) | RR형식 반환년도 |
00~49 | 00~49 | 현재 세기 |
00~49 | 50~99 | 이전 세기 |
50~99 | 00~49 | 다음 세기 |
50~99 | 50~99 | 현재 세기 |
더보기
기본적인 날짜 연산 결과
연산 | 결과 | 설명 |
날짜 + 숫자 | 날짜 | 날짜에 일수를 더하여 반환한다. |
날짜 - 숫자 | 날짜 | 날짜에 일수를 빼고 반환한다. |
날짜 - 날짜 | 숫자(일수) | 두 날짜의 차이(일수)를 반환한다. |
날짜 + 숫자/24 | 날짜 | 날짜에 시간을 더한다. |
SYSDATE
DB서버에 설정된 날짜를 반환한다.
SELECT SYSDATE
FROM dual;
SELECT SYSDATE 오늘, SYSDATE+1 내일, SYSDATE-1 어제
FROM dual;
MONTHS_BETWEEN( date1, date2 )
두 날짜 사이의 월수를 계산하여 반환한다.
SELECT MONTHS_BETWEEN(sysdate, '23/07/29')
FROM DUAL;
ADD_MONTHS( date1, n )
특정 개월 수를 더한 날짜를 계산하여 반환한다. 음수값일 경우, 뺀 날짜를 반환한다.
SELECT sysdate 현재, ADD_MONTHS(sysdate,1) 다음달,
ADD_MONTHS(sysdate,-1) 이전달
FROM dual;
NEXT_DAY( date1, 'string'| n )
명시된 날짜로부터 다음 요일에 대한 날짜를 반환한다.
SELECT NEXT_DAY(SYSDATE, '금')
FROM DUAL;
-- 일요일: 1 월요일: 2...툐요일: 7
LAST_DAY ( date1)
지정된 월의 마지막 날짜를 반환한다. 윤년 및 평년 모두 자동으로 계산된다.
SELECT LAST_DAY(SYSDATE)
FROM DUAL;
ROUND( date1 , 'YEAR') , ROUND(date1, 'MONTH')
날짜를 가장 가까운 년도 또는 월로 반올림하여 반환하다.
SELECT
ROUND(SYSDATE,'YEAR'),
ROUND(SYSDATE,'MONTH')
FROM DUAL;
TRUNC( date1 , 'YEAR') , TRUNC((date1, 'MONTH')
날짜를 가장 가까운 년도 또는 월로 절삭하여 반환한다.
SELECT
TRUNC(SYSDATE,'YEAR'),
TRUNC(SYSDATE,'MONTH')
FROM DUAL;
'Database > Oracle' 카테고리의 다른 글
Oracle Datebase - 함수_단일행 함수_조건 함수 (0) | 2023.07.31 |
---|---|
Oracle Datebase - 함수_단일행 함수_변환 함수 (0) | 2023.07.30 |
Oracle Datebase - 함수_단일행 함수_숫자처리 함수 (0) | 2023.07.29 |
Oracle Datebase - 함수_단일행 함수_문자처리함수 (0) | 2023.07.28 |
Oracle database - SQL함수 (0) | 2023.07.28 |