2011-08-22 21 views
8

En pseudo-Oracle, quiero hacer lo siguiente:¿Cómo puedo convertir un número a un INTERVAL de minutos?

select systimestamp + to_interval(select NUMERIC_COLUMN from SOME_TABLE where SOME_TABLE_PK = :stuff) from dual; 

Si el número de minutos eran siempre los mismos, que podría utilizar un intervalo literal a la interval '360' minute, pero no puedo encontrar una función simple para convertir un número a un intervalo de MINUTE. ¿Qué me estoy perdiendo?

Respuesta

15

Usted puede utilizar la función de numtodsinterval que hace exactamente la conversión que necesita (número de intervalo):

SQL> select systimestamp, systimestamp + numtodsinterval(20, 'MINUTE') from dual; 

SYSTIMESTAMP    SYSTIMESTAMP+NUMTODSINTERVAL(2 
------------------------- ------------------------------- 
2011-08-22 16:12:24.060 2011-08-22 16:32:24.060 
Cuestiones relacionadas