Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Пагинация / 5 сообщений из 5, страница 1 из 1
24.07.2019, 15:50
    #39841011
alex1610
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пагинация
Добрый день! Натолкнулся на интересную статью https://use-the-index-luke.com/no-offset

Хотелось бы понять, как при таком подходе будет выглядеть сортировка по неуникальному полю.

У меня есть вот такая идея, но не знаю насколько это оптимально:

SELECT ...
FROM ...
WHERE ...
AND CONCAT(name,id) < CONCAT(last_seen_id,last_seen_name)
ORDER BY name DESC
FETCH FIRST 10 ROWS ONLY

Достаточно ли будет индекса по name или нужно делать нечто вот такое:
CREATE INDEX myindex ON table USING btree ( CONCAT(name,id) );

Насколько вообще все это будет производительнее, чем пагинация limit/offset? Может есть лучший паттерн?

Поделитесь опытом)
...
Рейтинг: 0 / 0
24.07.2019, 15:52
    #39841015
alex1610
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пагинация
alex1610, вот так хотел

SELECT ...
FROM ...
WHERE ...
AND CONCAT(name,id) < CONCAT(last_seen_name,last_seen_id)
ORDER BY name DESC
FETCH FIRST 10 ROWS ONLY
...
Рейтинг: 0 / 0
24.07.2019, 15:53
    #39841016
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пагинация
alex1610,

Об этом лучше расписано в другой статье там же: https://use-the-index-luke.com/sql/partial-results/fetch-next-page
...
Рейтинг: 0 / 0
24.07.2019, 16:13
    #39841029
alex1610
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пагинация
Melkij,

Спасибо! И как я сам не заметил
...
Рейтинг: 0 / 0
24.07.2019, 17:21
    #39841058
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пагинация
alex1610,

там что-то не так с навигацией. Я сам не сразу могу найти вторую статью
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Пагинация / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]