date type function
1. 날짜 타입 함수
Date + Number : 날짜에 일수를 더함, Date 값을 반환
Date - Number : 날짜에 일수를 뺌, Date 값을 반환
Date - Date : 날짜에서 날짜를 뺌, 일수를 반환
Date + Number / 24 : 날짜에 시간을 더할 때는 시간을 24로 나눠서 날짜에 더함, Date 값을 반환
(1) 오늘 날짜와 시간, 오늘날짜에서 1을 더한 값, 1을 뺀 값, 2017년 12월 2일에서 2017년 12월 1일을 뺀 값, 오늘 날짜에서 13시간을 더한 값 출력하기
TO_CHAR : 문자 변환 함수, SYSDATE의 시간까지 출력하기 위해 사용함
SYSDATE : 시스템의 현재 날짜와 시간을 반환하는 함수
SELECT TO_CHAR(SYSDATE, ‘YY/MM/DD/HH24:MI’) 오늘날짜,
SYSDATE + 1 더하기1,
SYSDATE - 1 빼기1,
TO_DATE(‘20171202’)-TO_DATE(‘20171201’) 날짜빼기,
SYSDATE + 13/24 시간더하기
FROM DUAL;
날짜 함수 | 설명 | 예 | 결과 |
---|---|---|---|
MONTHS_BETWEEN | 두 날짜 사이의 월수를 계산 | MONTHS_BETWEEN(SYSDATE, HIRE_DATE) | 171.758 |
ADD_MONTHS | 월을 날짜에 더함 | ADD_MONTHS(HIRE_DATE, 5) | 03/11/17 |
NEXT_DAY | 명시된 날짜부터 돌아오는 요일에 대한 날짜를 출력(SUNDAY:1, MONDAY:2, …) | NEXT_DAY(HIRE_DATE, 1) | 03/06/22 |
LAST_DAY | 월의 마지막 날을 계산 | LAST_DAY(HIRE_DATE) | 03/06/30 |
ROUND | 날짜를 가장 가까운 연도 또는 월로 반올림(YEAR or MONTH) | ROUND(HIRE_DATE, ‘MONTH’) | 03/07/01 |
TRUNC | 날짜를 가장 가까운 연도 또는 월로 절삭(YEAR or MONTH) | TRUNC(HIRE_DATE, ‘MONTH’) | 03/06/01 |
2. MONTHS_BETWEEN : 두 날짜 사이의 개월 수 계산하기
MONTHS_BETWEEN(날짜, 날짜)
(1) employees 테이블에서 department_id가 100인 직원에 대해 오늘 날짜, hire_date, 오늘 날짜와 hire_date 사이의 개월 수를 출력하세요.
SELECT SYSDATE, hire_date, MONTHS_BETWEEN(SYSDATE, hire_date) 적용결과
FROM employees
WHERE department_id = 100;
3. ADD_MONTHS : 월에 날짜 더하기
ADD_MONTHS(날짜, 숫자)
(1) employees 테이블에서 employee_iod가 100과 106 사이인 직원의 hire_date에 3개월을 더한 값, hire_date에 3개월을 뺀 값을 출력하세요.
SELECT hiredate,
ADD_MONTHS(hire_date, 3) 더하기적용결과,
ADDMONTHS(hire_date, -3) 빼기적용결과
FROM employees
WHERE employee_id BETWEEN 100 AND 106;
4. NEXT_DAY : 돌아오는 요일의 날짜 계산하기
NEXT_DAY(날짜, ‘요일’ or 숫자)
(1) employees 테이블에서 employee_id가 100과 106 사이인 직원의 hire_date에서 가장 가까운 금요일의 날짜가 언제인지 문자로 지정해서 출력하고, 숫자로도 지정해서 출력하세요.
SELECT hiredate,
NEXT_DAY(hire_date, ‘금요일’) 적용결과문자지정,
NEXTDYA(hire_date, 6) 적용결과숫자지정
FROM employees
WHERE employee_id BETWEEN 100 AND 106;
5. LAST_DAY : 돌아오는 월의 마지막 날짜 계산하기
LAST_DAY(날짜)
(1) employees 테이블에서 employee_id가 100과 106 사이인 직원의 hire_date를 기준으로 해당 월의 마지막 날짜를 출력해 보세요.
SELECT hire_date,
LAST_DAY(hire_day)
FROM employees
WHERE employee_id BETWEEN 100 AND 106;
6. ROUND, TRUNC : 날짜를 반올림하거나 절삭하기
ROUND or TRUNC(날짜, 지정 값)
(1) employees 테이블에서
SELECT hire_date,
ROUND(hire_date, ‘MONTH’) 적용결과_ROUND_M, ROUND(hire_date, ‘YEAR) 적용결과_ROUND_Y,
TRUNC(hire_date, ‘MONTH’) 적용결과_TRUNC_M,
TRUNC(hire_date, ‘YEAR’) 적용결과_TRUNC_Y
FROM employees
WHERE employee_id BTWEEN 100 AND 106;
install_url
to use ShareThis. Please set it in _config.yml
.