Количество результатов по запросу + постраничный вывод

letsgo

Новичок
Добрый день.
Подскажите, пожалуйста, как грамотно организовать постраничный вывод результатов.

Сейчас при обращении к каталогу продукции делается два запроса:

Первый запрос для вывода результата:
"SELECT * FROM `catalog` LIMIT $start,15", где переменная $start зависит от передаваемого параметра $_GET['page'] (номера страницы).

Затем, чтобы составить навигацию делается следующий запрос:
"SELECT `idcatalog` FROM `catalog`", таким образом, мы получаем общее число строк в таблице, делим его на 15 (количество результатов на странице) и получаем нужное число страниц.

На практике, запросы выглядят несколько иначе, больше параметров поиска и плюс ко всему сама таблица имеет внушительный размер, почти миллион записей.
Можно ли как-то обойтись без двух запросов для организации постраничного вывода?
Спасибо.
 

Jon

Новичок
Semen
ну тут я так понял пользователь хочет все одним запросом решить.
 

Bardak

Новичок
может хранить кол-во записей в таблице в отдельном месте
 

Jon

Новичок
Semen
а у меня тож через 2 запроса, одним не решал проблему. так что хвастатца то и не чем(
 

letsgo

Новичок
может хранить кол-во записей в таблице в отдельном месте
Хм...это как?
При поиск задаётся много параметров, при изменении одного параметра количество записей будет отличаться.
 

Jon

Новичок
ну можно в масив все забить если так уж хочется одним запросом)
а вообще не вижу проблем второго запроса, сколько у тебя выполняется главный запрос ?
 

Breeze

goshogun
Команда форума
Партнер клуба
Вам первым же ответом дана ссылка, там и читайте.
Тем более, что SELECT `idcatalog` FROM `catalog` для подсчета количества достойно всяческого порицания с занесением.
 

Jon

Новичок
Breeze
а вот инересно мнение, некоторые утверждают что

PHP:
SELECT count(idcatalog) FROM `catalog`
работает дольше чем
PHP:
SELECT count(*) FROM `catalog`
правда ли это?
 

Breeze

goshogun
Команда форума
Партнер клуба
Jon
для получения ответа на этот вопрос тебе надо пойти и почитать мануал на тему работы count
 

Jon

Новичок
Breeze,Gas
Вот спасибо, тыкнули прям как кошечку в нужное место ))
почитал полезно :)
 

Активист

Активист
Команда форума
Это теперь мода такая пошла за 1 неделю создавать по три треда?
 
Сверху