Det afhænger af, hvad du leder efter. Hvis du er ude efter de næste 7 dage, så:
select *
from my_table
where date_col between :my_date and :my_date + 7
Hvis du vil sige mandag til søndag, så brug next_day
funktion:
select *
from my_table
where date_col between next_day(:my_date, 'Monday') - 7
and next_day(:my_date, 'Monday')
Begge hvor :my_date
er den dato, du passerer ind.
Hvis du ikke sender en dato, men en streng, ville den første blive ved at bruge to_date
funktion:
select *
from my_table
where date_col between to_date(:my_date,'dd/mm/yyy') + 7
and to_date(:my_date,'dd/mm/yyy')
og du kunne gøre noget lignende for det andet. Hvis du skal bruge to_date
derefter date_col
skal have et funktionsbaseret indeks
på to_date(date_col,'dd/mm/yyyy')
eller hvis du vil konvertere det anderledes så på den måde.