Зависи какво търсиш. Ако сте изминали следващите 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')
или ако ще го конвертирате по различен начин, тогава по този начин.