SQL-запрос занимает 60 секунд

У меня есть этот запрос для таблицы с 14 тысячами строк … потребовалось навсегда, чтобы завершить вывод. Вот код:

$query="SELECT j6.Name, j.id,
SUM(j6.pts) + IFNULL(j.pts, 0) AS total
FROM joueurs2006 j6 LEFT OUTER JOIN joueurs j
ON (j.Name = j6.Name)
WHERE j6.pts != 0 GROUP BY j6.Name
ORDER BY total DESC
LIMIT 0,15";

Я хочу собрать статистику прошлых сезонов (все они хранятся в joueurs2006) и добавить статистику текущего (joueurs). Это работало хорошо в течение нескольких лет, но теперь с 14K строк в таблице, это занимает целую вечность. Спасибо за советы!

0

Решение

Это ваш запрос:

SELECT j6.Name, j.id, SUM(j6.pts) + IFNULL(j.pts, 0) AS total
FROM joueurs2006 j6 LEFT OUTER JOIN
joueurs j
ON j.Name = j6.Name
WHERE j6.pts <> 0
GROUP BY j6.Name
ORDER BY total DESC
LIMIT 0, 15;

Для этого запроса вы хотите, чтобы индексы joueurs2006(name, pts) а также joueurs(name, pts), Это должно работать лучше.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]