Для работы с реляционной базой данных нужно понимать, что нет следующей строки, нет предустановленного порядка.Вам нужно запросить определенный заказ путем сортировки, а затем получить столько записей в этом порядке, сколько вам нужно.
В этом случае вы используете, например, .filter(the_table.c.name == "John")
, затем .order_by("id", "name")
, затем .limit(2)
.Если вы выбрали две строки, то было две записи, которые соответствуют вашему ограничению.Не может быть никаких записей или только одна запись.
Все становится сложнее, если у вас есть несколько наборов записей для Джона, и вы хотите определенную подпоследовательность.Для этого вы можете добавить условие типа the_table.c.id >= certain_id
или что-то подобное для даты.
Как правило, в вашей модели данных отсутствует явный способ связать несколько записей в одну последовательность.У вас нет «идентификатора последовательности», «идентификатора предыдущей записи» или чего-то подобного, что помогло бы увидеть несколько записей как связанные.Возможно, вы можете использовать для этого столбец отметки времени, , если , то это соответствует вашей проблеме;вполне вероятно, что нет.