Есть запрос $query=mysqli_query($connect, "SELECT * FROM lvl_base WHERE steam LIKE '$rank'");
который в последующем обрабатывается. 5 таких запросов на одной странице в таблици размером от 7тыс. до 15тыс. записей, грузят пустую страницу 8-15 секунд.
Как оптимизировать запрос?
steam LIKE = '$rank'
эквивалентно выражению steam = '$rank'
. Оператор =
сравнивает строку целиком, а оператор LIKE
побуквенно каждый символ, поэтому в целом советую в данном случае использовать оператор =
.$rank
, поэтому лучше в данном случае выполнить 1 запрос вместо 5 используя оператор IN
, например: WHERE steam IN ('$rank1', '$rank2', '$rank3', ...)
либо используя оператор OR
, например: WHERE (steam = '$rank1') OR (steam = '$rank2') OR (steam = '$rank3') OR ...
SELECT * FROM ...
, возможно у вас в БД лежат большие данные в каждой строке. Используйте для выборки только нужные поля, например SELECT id, name ... FROM ...
LIMIT ... OFFSET ...
- ограничивайте выборку, делайте её постраничнойПроверяйте свой код :)
steam
limit
select (column1, column2)
,P.S. Экранируйте спецсимволы в переменной $rank
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Есть каталоги с изображениями, к ним можно получить доступ по абсолютным путям, надо добавить в главный индексный файл проверки на доступ...
Есть сайт на wordpressИнтересует как в php переменную записать вывод html и содержимое echo
Здравствуйте я сделал парсер видео с ютуба и там есть в описании номера телефонов и скайпы подскажите регулярное выражение или как парсить...