получить кол-во строк, чтобы использовать в пагинации, ничего необычного. Делаю так: count(*) OVER () AS total_count - тем самым в каждом объекте получаю доп поле, соответственно, total_count, в целом на фронте я понимаю как это использовать, но вот вопрос хороших практик - это вообще адекватно? Мне, как начинающему разработчику, это кажется слегонца костылем каким-то...
Как ты думаешь, насколько эффективно будет работать такая пагинация на нескольких миллионах строк записей? И особенно на больших номерах страниц
Думаю, что не очень =)
count будет хрен знает сколько выполняться, а большой offset - это тоже медленный запрос. Ну то есть время ответа сервера может измеряться в секундах)
Быстрого ответа, т.о., по пагинации не получается? Тратить время надо и нормально разбираться? Или есть что-то простое?
Ну ты попробуй каунт добавить если прям тупить будет то да, бесконечный пайджинг https://github.com/rucken/core-nestjs/blob/develop/libs/rucken/core-nestjs/src/services/users.service.ts#L90 У меня пока не было таких объёмов данных чтобы оно тупило, с всякими криптами там заведомо пагинацию не юзаю, так как там охереть как много данных
Обсуждают сегодня