Другой подход, позволяющий избежать двойных запросов, состоит в том, чтобы сначала извлечь все строки для текущей страницы, используя предложение LIMIT, а затем выполнять второй запрос COUNT (*) только в том случае, если было получено максимальное количество строк.
Во многих приложениях наиболее вероятным результатом будет то, что все результаты помещаются на одной странице, и необходимость разбивки на страницы является скорее исключением, чем нормой. В этих случаях первый запрос не будет извлекать максимальное количество результатов.
Например, ответы на вопрос stackoverflow редко выплескиваются на вторую страницу. Комментарии к ответу редко превышают лимит 5 или около того, чтобы показать их все.
Таким образом, в этих приложениях вы можете просто сначала выполнить запрос с LIMIT, а затем, если этот предел не достигнут, вы точно знаете, сколько строк без необходимости делать второй запрос COUNT (*) - которые должны охватывать большинство ситуаций.