Я работаю над игрой и связываю номер машины с пользователем, которому принадлежит машина.
Когда я выполняю первый запрос, чтобы найти владельца автомобиля, требуется около,1 секунда
SELECT aid FROM owned_vehicles INNER JOIN users ON users.identifier = owned_vehicles.owner WHERE vehicle LIKE '%04IBQ509%' LIMIT 1
В результате получается aid
, что относится к первичному ключу пользователя, которому принадлежит автомобиль.В этом случае
aid
11
Но когда я использую тот же запрос на другом номерном знаке, загрузка данных занимает более 30 секунд (обнаружена эта проблема, когда пользователи жаловались на время загрузки и сообщение о тайм-ауте).)
SELECT aid FROM owned_vehicles INNER JOIN users ON users.identifier = owned_vehicles.owner WHERE vehicle LIKE '%85RAF179%' LIMIT 1
Через более 30 секунд это приведет к 5475
.Как может случиться так, что этой новой машине требуется гораздо больше времени для загрузки?
Пытаясь решить эту проблему, я выполнил эти запросы как в HeidiSQL (MySQL GUI), так что это также приводит к странным временам выполнения
Я попытался создать индекс столбца транспортного средства, чтобы ускорить его.Но это не делает различий.
Кто-нибудь знает, как решить мою проблему и ускорить мой запрос?(Исключение должно составлять максимум 2 секунды)