Возможно, я упускаю что-то очень очевидное, но не могу запустить несколько операторов UPDATE
. Чего я хочу добиться - это SELECT
значение AVG()
из таблицы и UPDATE
столбец на основе этих значений в другой таблице.
Я следовал следующему решению, но не смог его запустить:
Оригинальный ответ
мое решение:
UPDATE
teams
SET
teams.overall_rank = q.rank_avg
FROM
(
SELECT
team_id as t_id,
AVG(rank) as rank_avg
FROM
team_list
WHERE
rank NOT IN (0, -1)
GROUP BY
team_id
ORDER BY
rank_avg
) q
WHERE
q.t_id = teams.team_id
Сообщение об ошибке:
You have an error in your SQL syntax; it seems the error is around: 'FROM ( SELECT team_id as t_id, AVG(rank) as rank_avg FR' at line 5
Я использую MySQL. Что мне здесь не хватает?