В Oracle мы можем превращать даты в числа и применять к ним арифметику различными способами.
Например, sysdate-7
дает нам дату семь дней назад. trunc(some_date)
удаляет элемент времени из столбца даты. И to_char(some_date, 'SSSSS')
дает нам свой элемент времени в виде количества секунд с полуночи. Таким образом, 06:45:00 - это 24300 секунд, а 18:15:59 - 69359 секунд (пожалуйста, проверьте эти цифры, так как они находятся на обороте конверта).
В любом случае, собрав все это в один запрос, как этот ...
select *
from your_table
where creation_date >= trunc(sysdate)-7
and to_number(to_char(creation_date, 'sssss')) between 24300 and 69359
... создаст все записи, созданные за последнюю неделю, с элементом времени в основных часах.