Oracle® Database SQL Language Reference 11g Release 2 (11.2) Part Number E10592-02 |
|
|
View PDF |
Syntax
Purpose
NUMTODSINTERVAL
converts n
to an INTERVAL
DAY
TO
SECOND
literal. The argument n
can be any NUMBER
value or an expression that can be implicitly converted to a NUMBER
value. The argument interval_unit
can be of CHAR
, VARCHAR2
, NCHAR
, or NVARCHAR2
data type. The value for interval_unit
specifies the unit of n
and must resolve to one of the following string values:
'DAY
'
'HOUR
'
'MINUTE
'
'SECOND
'
interval_unit
is case insensitive. Leading and trailing values within the parentheses are ignored. By default, the precision of the return is 9.
See Also:
Table 3-10, "Implicit Type Conversion Matrix" for more information on implicit conversionExamples
The following example uses NUMTODSINTERVAL
in a COUNT
analytic function to calculate, for each employee, the number of employees hired by the same manager within the past 100 days from his or her hire date. Refer to "Analytic Functions" for more information on the syntax of the analytic functions.
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; MANAGER_ID LAST_NAME HIRE_DATE T_COUNT ---------- ------------------------- --------- ---------- 100 De Haan 13-JAN-01 1 100 Raphaely 07-DEC-02 1 100 Kaufling 01-MAY-03 1 100 Hartstein 17-FEB-04 1 100 Weiss 18-JUL-04 1 . . . 149 Grant 24-MAY-07 1 149 Johnson 04-JAN-08 1 201 Fay 17-AUG-05 1 205 Gietz 07-JUN-02 1 King 17-JUN-03 1