Поиск в бд по сортированной дате

Интересует такой вопрос, имеется таблица с миллиардами записей за 100 лет, где есть поле date(дата создания записи). Нужно выгрузить данные за прошлую неделю с параметром limit 1. На прошлой неделе данных не было и запрос начинает перебирать все даты пока не доберется до 1921 года и только потом выведет сообщение, что данных не найдено. Это займет неимоверно много времени. Данные добавляются последовательно и поэтому можно было бы остановить запрос сразу же, как только перепрыгнули необходимую нам дату. Может такой механизм в sql существует? такое условие как:

where date between '2021-12-01 00:00:00' and '2021-12-07 23:59:59'

будет перебирать всю бд, пока не пройдет все строки. А хотелось бы выполнить такой запрос быстро =)


Ответы (0 шт):