Я использую cakephp с postgresql. Некоторые из моих таблиц очень большие. При использовании разбивки на страницы CakePHP он запускает COUNT()
на большой таблице и затем запрашивает фактический результат. Запрос на подсчет занимает 2,5 минуты, тогда как фактический запрос, который возвращает данные, занимает 95 мс.
Можно ли устранить необходимость в подсчете или заменить его чем-то, что может идти быстрее?
Мне не нужно возвращать точное количество строк, так же, как поиск Google возвращает результаты 1-10 из примерно 765 000.
РЕДАКТИРОВАТЬ: Альтернативно, есть ли способ я могу отключить счет вообще? Часто будет так много результатов, зная, сколько страниц не нужно. Все, что мне нужно, это кнопка «Далее», которая увеличивает SQL OFFSET, как уже было в пагинации cakephp, и если на следующей странице не возвращаются строки, это нормально.