170 похожих чатов

Есть эксперты в пагинации? простая limit offset хороша тем что позволяет

иметь доступ к рандомной странице. однако она неэффективная на больших оффсетах


что если нужно и эффективно и с доступом к произвольной странице?

14 ответов

58 просмотров

а можно пример что за большие офсеты

RAFIZ- Автор вопроса
RAFIZ
а вы поняли вопрос?

Какой был вопрос? Про экспертов в пагинации?

RAFIZ- Автор вопроса
Дмитрий
Какой был вопрос? Про экспертов в пагинации?

у вас какой вопрос? их тоже несколько, как и в моём сообщении

RAFIZ
у вас какой вопрос? их тоже несколько, как и в мо...

Ну с таким подходом полагаю мало кто захочет тебе отвечать.

Кмк тут только пагинация по ключу, т.е. по индексу, без дополнительных фильтров. Тогда оффсет будет дешевле

Может быть тебе нужна сортировка по достаточно уникальному ключу типа uuid

WHERE (комбинация параметров сортировки) > (последняя комбинация на предыдущей странице) Никакого оффсета, только лимит

Нет такого варианта. Либо быстро, либо с доступом к произвольной странице.

https://youtu.be/wi6h9ox1wwM?si=Xk54UIqRU330i84n

Выбери что-то одно, или offset/seek pagination с индексом по атрибуту, по которому будешь двигать курсор и тогда у тебя быстрая бесконечная лента, либо произвольный доступ, но обычно редко кто дальше пары первых страниц заходит. Но если нужен такой вариант, тут только кэшировать отдельные страницы, но нужно понимать, тогда у тебя другая проблема - инвалидация кэшей и обновление вьюх

Dima
Выбери что-то одно, или offset/seek pagination с и...

Ну не, можно комбинировать оба подхода - для перехода к следующей/предыдущей использовать один подход, для перехода к случайной странице второй. Но проблема вычисления count для подсчёта числа страниц все равно останется

Похожие вопросы

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
#include <stdio.h> #include <stdlib.h> #include <time.h> void mass_first_generate(int mass[5][7]) {     for (int N = 0; N < 5; N++) {         for (int A = 0; A < 7; A++) {   ...
Чувак
6
Всем привет! Решаю 99 OCaml Problems и столкнулся со следующей проблемой (прошу палками не забивать, я OCaml практически не трогал до этого момента): open OUnit2 let create_...
К|/|pи/\/\ 6е3yглbIи
2
https://www.linkedin.com/posts/ugama-benedicta-kelechi-codergirl-103041300_mobiledevelopment-fluttertraining-handsonlearning-activity-7263445699227254784-IdHB?utm_source=share...
CoderGirl
16
возможно ли как-то передать в электрон или таури медиа поток с рендера 2д движка? двиг запускается как dll, а дальше надо как-то отправлять рендер кодировать не подходит, зр...
Kyle Nekto
7
Ну вот просто даже давайте вот как. Какой нибудь конкретный кейс, можете в пример привести, где бч работает и приносит прикладную пользу, а не просто что бы было? Не крипту.
Alexander Andreev
22
Помогите пожалуйста. Делаю систему плагинов. Проблема сейчас в такая: плагины загружаются в основном потоке. FLibHandle := SafeLoadLibrary(FFileName) Но нужно еще выполнить фу...
Илья 🤣
10
Точно, оно. У тебя там имена потоков выставляются?
Александр (Rouse_) Багель
9
объясните пожалуйста, почему функция не работает должным образом? вроде должно брать активное окно сравнивать его размер с размером экрана, и если есть совпадение = true прове...
JF
12
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Карта сайта