У меня есть две таблицы под названием Стопы и Stop_Times, они связаны с туристическим агентством. Останавливает запись 8K и таблицу Stop_Times, имеющую 3,2 миллиона записей. Когда я выполняю запрос UPDATE, это занимает слишком много времени. Это заняло 3,5-4 часа, но записи не обновляются. Мой запрос -MySQL Update Query занимает слишком много времени
UPDATE Stops
JOIN Stop_Times ON Stops.stop_id = Stop_Times.stop_id
SET
Stops.route_type = Stop_Times.route_type,
Stops.agency_id = Stop_Times.agency_id
WHERE Stops.location_type = 0
Для этих двух таблиц я использую механизм хранения MyISAM. I hv проиндексировал Стопы и Стоп_Таблицы.
Я использую этот запрос для Linux CentOs.
Есть ли способ увеличить скорость запроса UPDATE?
вы уверены, что столбцы в сравниваемых друг с другом, имеют точно такой же тип? –
Столбец 'Stop_Times.stop_id' уникальный столбец? Если это не так (как я подозреваю по вашим подсчетам строк), вы можете попытаться обновить каждую запись «Stops» несколько раз со значениями из разных строк из «Stop_Times». Возможно, вы также должны фильтровать результаты «Stop_Times»? – lanzz
@Lex, stop_id из обеих таблиц имеют одинаковый тип данных – Deepu