Бази даних · Middle · Запитання 36 з 75

Чому keyset-пагінація (курсором) швидша за OFFSET на далеких сторінках?

SELECT * FROM posts
WHERE (created_at, id) < ($1, $2)
ORDER BY created_at DESC, id DESC
LIMIT 20;

Пояснення

Додайте унікальний стовпець (як-от id) для однозначності порядку. Компроміс: не можна перейти на довільний номер сторінки.

Де почитати

Помилка в запитанні

Бази даних · Middle · запитання 36

Перевірте себе

Пройдіть тест Бази даних · Middle: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест