Как циклически просматривать записи из БД в телеграм боте?
пишу телеграм-бота на aiogram, с довольно простым функционалом - принимать от пользователей заявки и выводить их поочередно для метчинга(принцип работы как в тиндере) - бот выводит заявку пользователю, он отвечает ему да/нет, потом выводит след заявку и тд. На этапе написания просмотра заявок столкнулся с такой проблемой - пока не понимаю, как правильно забирать данные из бд, чтобы анкеты не повторялись и в памяти при этом не хранились все записи. Была идея просто сделать сортировку в случайном порядке и забирать первую запись, но на мальньком наборе данных будет слишком много повторов с таким подходом. Была идея сделать поле индекса, забирать все записи из бд, и просто брать по индексу, но мне кажется, это вообще не оптимально по памяти. Так же хочу это сделать полностью циклически, чтобы после перебора всех записей они выводились по второму кругу.
Храни для каждого пользователя id/номер записи, на которой он остановился.
Есть несколько corner-case'ов, например, добавление новой записи после того как просмотр начался... но в целом не должно быть очень сложно.