Я хочу обновить таблицу в операторе, который имеет несколько объединений. Хотя я знаю, что порядок объединений на самом деле не имеет значения (если вы не используете подсказки оптимизатора), я заказал их определенным образом, чтобы они были наиболее интуитивно понятными для чтения. Однако это приводит к тому, что таблица, которую я хочу обновить, не является той, с которой я начинаю, и у меня возникают проблемы с ее обновлением.
Фиктивный пример того, что я хотел бы сделать, выглядит примерно так:
UPDATE b
FROM tableA a
JOIN tableB b
ON a.a_id = b.a_id
JOIN tableC c
ON b.b_id = c.b_id
SET b.val = a.val+c.val
WHERE a.val > 10
AND c.val > 10;
Здесь есть много сообщений об обновлении с помощью объединений, однако у них всегда сначала обновляется таблица. Я знаю, что это возможно в SQL Server, и, надеюсь, это возможно и в MySQL тоже!