Nó phụ thuộc vào những gì bạn đang theo đuổi. Nếu bạn sau 7 ngày tới thì:
select *
from my_table
where date_col between :my_date and :my_date + 7
Nếu bạn muốn nói từ Thứ Hai đến Chủ Nhật thì hãy sử dụng next_day
chức năng:
select *
from my_table
where date_col between next_day(:my_date, 'Monday') - 7
and next_day(:my_date, 'Monday')
Cả nơi :my_date
là ngày bạn nhập cảnh.
Nếu bạn không chuyển ngày mà là một chuỗi thì ngày đầu tiên sẽ trở thành, bằng cách sử dụng to_date
chức năng:
select *
from my_table
where date_col between to_date(:my_date,'dd/mm/yyy') + 7
and to_date(:my_date,'dd/mm/yyy')
và bạn có thể làm điều gì đó tương tự cho lần thứ hai. Nếu bạn phải sử dụng to_date
rồi đến date_col
phải có chỉ mục dựa trên chức năng
vào to_date(date_col,'dd/mm/yyyy')
hoặc nếu bạn định chuyển đổi nó theo cách khác thì theo cách đó.