2015-09-16 3 views
1

Я хочу получить данные из базы данных Oracle между двумя часами назад и currentime_stamp. Как я могу это сделать?Извлечь данные из базы данных Oracle за последние два часа?

select count(*) as "trn<5",ROUND(avg (RESPONSE_TIME),2) as avr,ssn 
    from db_activity a 
    where a.REQ_TIMESTAMP BETWEEN current_timestamp -2 AND current_timestamp 
group by ssn 
+0

Используйте SYSDATE, чтобы получить текущее значение. 'где a.REQ_TIMESTAMP BETWEEN SYSDATE - (2/24) И SYSDATE' – San

ответ

0
...where a.REQ_TIMESTAMP >= (SYSDATE-1/12) 
+1

Спасибо, что сработало :) –

1

При работе с TIMESTAMP вы должны лучше использовать INTERVAL:

select count(*) as "trn<5",ROUND(avg (RESPONSE_TIME),2) as avr,ssn 
    from db_activity a 
    where a.REQ_TIMESTAMP BETWEEN current_timestamp - INTERVAL '2' HOUR AND current_timestamp 
group by ssn 
Смежные вопросы