Oracle NUMTODSINTERVAL 설명 : 오라클 함수
1. 함수의 목적
Oracle NUMTODSINTERVAL는 파라미터 n을 INTERVAL DAY TO SECOND 형식으로 변경한다.
2. 샘플을 통한 개념 퀵뷰
현재시간에 10분을 더해서 표시한다.
select systimestamp, systimestamp+numtodsinterval('10','minute')
from dual;
3. 사용방법
4. 함수 PARAMETER 설명
[n]
INTERVAL DAY TO SECOND 형식으로 변경할 숫자형이나 숫자형으로 변환이 가능한 문자를 입력한다.
[interval_unit]
변환 목표가 날짜인지, 시간인지, 분인지, 초인지에 따라 아래 스트링을 입력한다. (대소문자 무관하다)
■ 'DAY'
■ 'HOUR'
■ 'MINUTE'
■ 'SECOND'
참고) YEAR, MONTH를 위해서는 NUMTOYMINTERVAL함수가 있다.
기본적으로 반환되는 초정밀도는 소숫점 9자리까지이다.
5. 다양한 샘플표현
example1) COUNT() 함수에서 NUMTODSINTERVAL을 사용하여, 각 직원에 대해 고용일로부터 지난 100 일 동안 동일한 관리자가 고용한 직원수를 계산한다.
SELECT manager_id, last_name, hire_date,
COUNT(*) OVER (PARTITION BY manager_id ORDER BY hire_date
RANGE NUMTODSINTERVAL(100, 'day') PRECEDING) AS t_count
FROM employees
ORDER BY last_name, hire_date;