Считаем полное число строк в запросе MySQL, ограниченного LIMIT

О полезном операторе — SQL_CALC_FOUND_ROWS. Это конструкция просто незаменима для организации постраничного вывода каких либо данных. Все время забываю синтаксис, приходится каждый раз искать. Решил записать в блоге, чтобы уж не терять :).

Во всех случаях, когда требуется получить порцию данных, ограниченных с помощью части SQL предложения LIMIT, но при этом нужно знать сколько же всего соответствующих запросу строк данных найдено запросом, может быть использован специальный синтаксис. Вот он :

В PHP это будет как то так:

Ещё одна вещь в копилку know-how. Без использования этого метода пришлось бы, к примеру, дважды выполнить SQL запрос. Например, первый раз посчитать число строк, а вторым запросом выбрать нужную порцию (используя секцию LIMIT). Ну, или выполнить только тот запрос, у которого нет секции LIMIT и, используя mysql_data_seek, выбрать нужную порцию данных.

Мало букафф? Читайте есчо !

Нумерация при выборке строк в mySQL

Апрель 24, 2023 г.

В MSSQL есть функция ROW_NUMBER(), которая нумерует строки выборки. В MySQL такой функции пока нет, но мы можем использовать трюк с переменными для достижения нужного эффекта. К примеру, вы хотите выбрать название книг и пронумеровать список. Изначально ...

Читать

Развертывание бекапов mySQL из консоли unix

Февраль 6, 2018 г.

Как развернуть дамп базы данных mySQL, созданный ранее? Дамп представляет из себя mysql скрипт, в котором последовательно создаются таблицы (CREATE TABLE ...) и, возможно, другие объекты и производиться их наполнение (INSERT INTO ...). Нужно лишь отправить ...

Читать

Как удалить дубликаты из таблицы в MySQL

Сентябрь 24, 2025 г.

Под дублями можно иметь в виду разные условия. Возьмем как пример таблицу имен. В этой таблице есть повторяющиеся значения в поле name. Разберём практический способ удалить такие записи в MySQL с помощью одного SQL-запроса. Пример исходной таблицы ...

Читать

Как получить номер строки в MySql?

Ноябрь 5, 2016 г.

Что делать, если нужно пронумеровать строки прямо в запросе, т.е. во время UPDATE? Полистав руководство MySql 5.5, нужной функции я не нашел. Мне нужно было сохранять позиции пользователей в рейтинге, т.е. пронумеровать пользователей в зависимости ...

Читать
 

Комментарии к «Считаем полное число строк в запросе MySQL, ограниченного LIMIT»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: