|
|
날짜/시간 함수 |
|
|
|
1. ADD_MONTH 함수 |
|
ADD_MONTH 함수는 주어진 날짜에 개월을 더한 날짜를 반환한다. 계산된 날짜가 해당 월의 마지막 날보다 크면 마지막 날이 반환된다. 그 외에는 같은 날이 반환된다. |
|
1) 구문 |
ADD_MONTHS ( date_argument , month )
date_argument: date NULL
month : integer NULL |
|
|
date_argument 로 주어진 날짜에 month 만큼의 개월을 더한 날짜를 반환한다. 계산된 값이 DATE 값의 한계를 초과하면 에러가 발생된다. |
|
date_argument : 대상 날짜를 지정한다. 값이 NULLNULL이면 NULL을 반환한다. TIMESTAMP 값을 적용하려면 DATE 타입으로 명시적으로 변환해 주어야 한다. |
|
month : date_argument 에 더할 개월 수를 지정한다. 값이 NULLNULL이면 NULL을 반환한다. 정수가 아닌 타입의 값이 주어지면 우선 묵시적으로 정수 타입으로 변환된다. 값이 음수로 지정될 수도 있다. |
|
2) 예제 |
|
다음은 날짜 2/29/1980에 12개월을 더한 값을 반환하는 예제이다. |
SELECT ADD_MONTHS(DATE '2/29/1980',12) FROM db_root; === <Result of SELECT Command in Line 1> === add_months(DATE '2/29/1980',12) =============================== '1981-02-28' 1 rows selected. |
|
|
2. MONTHS_BETWEEN 함수 |
|
MONTHS_BETWEEN함수는 주어진 두 개의 DATE 값 간의 개월 차이를 반환한다. |
|
1) 구문 |
MONTHS_BETWEEN(date_argument, date_argument)
date_argument : date NULL |
|
|
DOUBLE 타입으로 반환하기 때문에 과학적 기수법으로 표기된다. |
|
date_argument : 두 개의 인자중 하나라도 NULL이면 결과로 NULL이 반환된다. date_argument에 TIMESTAMP 값을 적용하려면 DATE 타입으로 명시적 변환해주어야 한다. |
|
2) 예제 |
|
다음은 1/13/1999와 2/3/1999 두 날짜 차이를 31로 나눈 값을 반환하는 예제이다. |
SELECT MONTHS_BETWEEN(DATE '1/13/1999',DATE '2/3/1999') FROM db_root; === <Result of SELECT Command in Line 1> === months_between(DATE '1/13/1999',DATE '2/3/1999') ================================================ -0.6774193548387096 1 rows selected. |
|
|
다음은 8/15/2008과 8/15/2006 두 날짜 사이의 개월 차이를 반환하는 예제이다. |
SELECT MONTHS_BETWEEN(DATE '8/15/2008',DATE '8/15/2006') FROM db_root; === <Result of SELECT Command in Line 1> === months_between(DATE '8/15/2008',DATE '8/15/2006') ================================================= 24.0 1 rows selected. |
|
|
3. LAST_DAY 함수 |
|
LAST_DAY 함수는 주어진 월의 마지막 날을 반환한다. |
|
1) 구문 |
LAST_DAY ( date_argument )
date_argument: date NULL |
|
|
date_argument : 그 달의 마지막 날을 구할 날짜를 지정한다. 값이 NULL이면 결과로 NULL을 반환한다. TIMESTAMP 값을 적용하려면 DATE 타입으로 명시적 변환해주어야 한다. |
|
2) 예제 |
|
다음은 2000년 1월의 마지막 날을 반환하는 예제이다. |
SELECT LAST_DAY(DATE '1/01/2000') FROM db_root; === <Result of SELECT Command in Line 1> === last_day(DATE '1/01/2000') ========================== 2000-01-31 1 rows selected. |
|
|
4. SYS_DATE(SYSDATE, CURRENT_DATE) 함수 |
|
SYS_DATE (또는 SYSDATE, CURRENT_DATE) 함수는 현재 날짜를 DATE 타입으로 반환한다. |
|
1) 구문 |
SYS_DATE SYSDATE CURRENT_DATE |
|
|
2) 예제 |
|
다음은 모두 현재 날짜를 DATE 타입으로 반환하는 예제들이다. |
SELECT SYS_DATE FROM db_root;
SELECT SYSDATE FROM db_root;
SELECT CURRENT_DATE FROM db_root; |
|
|
5. SYS_TIME(SYSTIME, CURRENT_TIME) 함수 |
|
SYS_TIME (또는 SYSTIME, CURRENT_TIME) 함수는 현재 시간을TIME 타입으로 반환한다. |
|
1) 구문 |
SYS_TIME SYSTIME CURRENT_TIME |
|
|
2) 예제 |
|
다음은 모두 현재 시간을 TIME 타입으로 반환하는 예제들이다. |
SELECT SYS_TIME FROM db_root; SELECT SYSTIME FROM db_root; SELECT CURRENT_TIME FROM db_root; |
|
|
6. SYS_TIMESTAMP(SYSTIMESTAMP, CURRENT_TIMESTAMP) 함수 |
|
SYS_TIMESTAMP (또는 SYSTIMESTAMP, CURRENT_TIMESTAMP) 함수는 현재 날짜와 시간을 TIMESTAMP 타입으로 반환한다. |
|
1) 구문 |
SYS_TIMESTAMP SYSTIMESTAMP CURRENT_TIMESTAMP |
|
|
2) 예제 |
|
다음은 모두 현재 시간을 TIMESTAMP 타입으로 반환하는 예제들이다. |
SELECT SYS_TIMESTAMP FROM db_root; SELECT SYSTIMESTAMP FROM db_root; SELECT CURRENT_TIMESTAMP FROM db_root; |
|
|