У меня есть этот оператор SQL, который работает, но для его выполнения требуется некоторое время
У меня есть таблица активности, и мне нужно найти последнее действие и связанного пользователя для каждого идентификатора.
SELECT id, date_time, user
FROM activity_log a
WHERE a.date_time = (SELECT MAX(a1.date_time)
FROM activity_log a1
WHERE a.id = a1.id
GROUP BY id)
ORDER BY `id` desc limit 0, 100
У меня есть неуникальный индекс в поле date_time и id.
Как мы можем сократить время выполнения этого запроса?