Почему запрос долго отрабатывает?

Здравствуйте, есть 2 запроса:
SELECT count(id) as user_type1 FROM `users` WHERE date=? AND show_page1_count>=3 LIMIT 1
SELECT count(id) as user_type2FROM `users` WHERE date=? AND show_page2_count>=1 LIMIT 1

И первый запрос всегда висит в процессах, хотя выполняются они друг за другом.
Для обоих полей я использую индексы. Как я понимаю первый висит в процессах из-за постоянных перестроенний индекса, т.к. в базе ~1.5М строк(постоянно увеличивается) и show_page1_count постоянно изменяется, а show_page2_count только иногда
Как можно это исправить?
  • Вопрос задан
  • 310 просмотров
Решения вопроса 1
@DjZooM Автор вопроса
 
Решил проблему созданием промежуточной базы, где держу количество этих юзеров по дням
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ertaquo
@ertaquo
А если попробовать использовать SELECT COUNT(*) ?
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы