Задать вопрос
@Noob--Saibot

Какой способ получения количества записей в большой таблице mysql самый быстрый??

Сайт с 200 000 страницами стал заметно тормозить. Я уверен, что такой способ получения кол-ва записей, как ниже приведен, он плохой:
$result = mysql_query("SELECT COUNT(*) FROM cache");
$total_records = mysql_result($result,0,0);

Подскажите пожалуйста какой еще проще?
  • Вопрос задан
  • 621 просмотр
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Corazonroto
Ответ:
Как вариант, один из: https://habrahabr.ru/post/126233/
Ещё тянут через курсоры: https://habrahabr.ru/post/30046/. Думаю, в mysql тоже есть такая возможность.
Но(!) если количество записей у вас меняется редко, то, пожалуй, есть смысл просто кешировать запрос до наступления какого-либо события.
Всё зависит от ситуации. Возможно, что-то подойдёт из предложенного.
Ответ написан
@shagguboy
все нормальные люди такое считают на триггерах или не считают вообще
Ответ написан
Комментировать
@Kirill-Gorelov
С ума с IT
Два дня назад столкнулся с такой же ситуацией.
Кеширование мне не подошло. Мне подсказали использовать индексы.
Правда уже было поздно, я базу почистил, теперь снова жду 150 тысяч записей, попробую. Но если ты не очистил, то попробуй с индексами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы