@gomerIT

Как лучше делать запросы в БД разом или несколько раз для получения данных?

Мне нужно выводить данные пользователей в админке, которые зарегистрированные в системе. Если к примеру всего пользователей 100к. Вывод происходит в виде таблицы первых 15 пользователей дальше идет паддинг с кнопками переключения. Как сделать лучше в плане оптимизаций? Выполнить 1 запрос на получение всех данных или же несколькими запросами?
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Запрашивайте столько данных, сколько хотите отобразить.
LIMIT + OFFSET в помощь.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Pandorex
LIMIT + OFFSET на значениях далеких от начала - будут все медленнее
предположив что у вас есть сортировка по какому-либо полю, оптимальнее всего было бы передавать в качестве офсета последнее значение по которому указана сортировка и добавлять его в запрос как "email > 'LAST_EMAIL' "

как правило вывода далеко от начала не требуется и проще реализовать обычные LIMIT + OFFSET
Ответ написан
Комментировать
@cicatrix
было бы большой ошибкой думать
Вброшу свои мысли. 10К пользователей, разбитые на странички по 15 будут представлять собой 6667 страниц.
Да, разумеется, можно сделать подобную разбивку, так как здесь уже писали, но это равно сделать "на от.бись!"
Совершенно очевидно, что ни один человек в здравом уме и трезвой памяти не будет листать 6К страниц.
Естественно, усвоив это, необходимо вернуться в начало и понять, каких именно пользователей и по каким критериям будет в этом интерфейсе искать оператор. Видимо, ему не нужны все пользователи без исключения, ему нужны какие-то особенные, отличающиеся по какому-либо признаку. Соответственно и интерфейс предоставлять такой, чтобы облегчить этот поиск.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы