hyeonga_code
Database_19_날짜 함수_ROUND, TRUNC 본문
-- 날짜 데이터에 ROUND / TRUNC 함수
-- ROUND : 반올림합니다.
-- TRUNC : 버림합니다.
-- YEAR 'yyyy' : 한 해의 7월 1일을 기준으로 지정된 날짜를 당년, 혹은 다음 해의 1월 1일로 초기화합니다.
-- MONTH 'mm' : 각 달의 중간_15일 지정된 날짜를 당월 혹은 다음 월의 1일로 초기화합니다.
-- 1달이 31일인 경우 15일 정오, 1달이 30일인 경우 14일 자정이 기준이 됩니다.
-- DD : 정오를 기준으로 지정된 날짜를 특정 일의 자정으로 초기화합니다.
-- D : 수요일을 기준으로 지정된 날짜를 전후 일요일로 초기화합니다.
SELECT ROUND(sysdate, 'yyyy'), ROUND(sysdate,'mm'), ROUND(sysdate, 'dd'), ROUND(sysdate, 'day')
FROM dual;
/*
R(sys..., 'yyyy') R(sys...,'mm') R(sys..., 'dd') R(sys..., 'day')
-------------------------------------------------------------------------------------------------------
24/01/01 23/07/01 23/07/03 23/07/02
*/
SELECT TRUNC(sysdate, 'yyyy'), TRUNC(sysdate,'mm'), TRUNC(sysdate, 'dd'), TRUNC(sysdate, 'day')
FROM dual;
/*
T(sys..., 'yyyy') T(sys...,'mm') T(sys..., 'dd') T(sys..., 'day')
----------------------------------------------------------------------------------------------------------
23/01/01 23/07/01 23/07/03 23/07/02
*/
SELECT employee_id, MONTHS_BETWEEN( TRUNC(sysdate, 'mm'), TRUNC(hire_date, 'mm'))
FROM employees;
/*
EM_ID M_BETWEEN( TRUNC(sys..., 'mm'), TRUNC(hire_..., 'mm'))
-------------------------------------------------------------------------------------------------------
100 253
101 226
102 186
103 222
...
*/
'Oracle Database' 카테고리의 다른 글
Database_21_일반 함수_NVL, NVL2, COALESCE (0) | 2023.07.24 |
---|---|
Database_20_변환 함수_TO_CHAR, TO_NUMBER, TO_DATE, RR (0) | 2023.07.23 |
Database_18_날짜 함수_MONTH_BETWEEN, ADD_MONTH, NEXT_DAY, LAST_DAY, EXTRACT (0) | 2023.07.21 |
Database_17_날짜 함수_SYSDATE, CURRENT_DATE, SYSTIMESTAMP, CURRENT_TIMESTAMP (0) | 2023.07.20 |
Database_16_숫자 함수_ROUND, TRUNC, MOD, CEIL, FLOOR (0) | 2023.07.19 |