Я выполняю подкачку в моем приложении, возвращая 20 строк из базы данных за раз, используя стандартные ключевые слова PostgreSQL OFFSET и LIMIT. Например, чтобы получить страницу 1 page:
SELECT stuff FROM table WHERE condition ORDER BY stuff OFFSET 0 LIMIT 20
Это требование приложения, чтобы мы также показывали пользователю общее количество записей. Таким образом, очевидно, что я могу получить общую сумму, выполнив отдельный запрос:
SELECT COUNT(*) FROM table WHERE condition
Но если имеется большое количество строк, это не оптимальное решение. Я заметил, что в MySQL есть очень полезная функция FOUND_ROWS (), которая делает именно то, что я ищу:
Есть ли эквивалент в PostgreSQL?