Это зависит от того, что вы после. Если вы после следующих 7 дней, то:
select *
from my_table
where date_col between :my_date and :my_date + 7
Если вы хотите сказать с понедельника по воскресенье, используйте функцию next_day
:
select *
from my_table
where date_col between next_day(:my_date, 'Monday') - 7
and next_day(:my_date, 'Monday')
Оба, где :my_date
- дата вашего прохождения.
Если вы передаете не дату, а строку, то первая становится, используя функцию to_date
:
select *
from my_table
where date_col between to_date(:my_date,'dd/mm/yyy') + 7
and to_date(:my_date,'dd/mm/yyy')
и вы могли бы сделать что-то подобное для второго. Если вам нужно использовать to_date
, тогда date_col
должен иметь индекс на основе функций для to_date(date_col,'dd/mm/yyyy')
или если вы собираетесь конвертировать его по-другому, тогда таким способом.