Предположим, у меня есть таблица событий с (проиндексированными) столбцами id : uuid
и created : timestamp
.
Столбец id
является уникальным, а столбец created
- нет. Я хотел бы пройтись по таблице в хронологическом порядке, используя столбец created
.
Примерно так:
SELECT * FROM events WHERE created >= $<after> ORDER BY created ASC LIMIT 10
Здесь $<after>
- это параметр шаблона, который взят из предыдущего запроса.
Теперь я вижу две проблемы с этим:
- Поскольку
created
не является уникальным, порядок не будет полностью определен. Возможно, сортировка должна быть id, created
?
- Каждая строка должна быть только на одной странице, но в этом запросе последняя строка всегда включается на следующей странице.
Как мне поступить об этом в Postgres?