2011-08-22 2 views
8

В псевдо-Oracle, я хочу сделать следующее:Как преобразовать число в INTERVAL минут?

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

Если число минут всегда то же самое, я мог бы использовать интервал буквального а-ля interval '360' minute, но я не могу найти простую функцию для преобразования числа в интервал MINUTE. Что мне не хватает?

ответ

15

Вы можете использовать функцию numtodsinterval, которая делает именно преобразование вам нужно (число интервальных):

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 
Смежные вопросы