Обновление одной таблицы mysql на основе расчетов с использованием переменных в другой таблице
-
10-07-2019 - |
Вопрос
Я пытаюсь обновить одну таблицу на основе значений в другой таблице. Что не так со следующим запросом? Ошибка: Неизвестный столбец «source.col3» в «предложении where»
UPDATE target
SET target.col1 = source.col1 * target.col2,
WHERE target.col3 = source.col3
Решение
Ну, во-первых, вы нигде не указываете «источник» как таблицу.
MySQL фактически поддерживает обновление нескольких таблиц , поэтому вы мог бы написать свой код как:
UPDATE target, source
SET target.col1=source.col1*target.col2
WHERE target.col3=source.col3
Теперь, если бы это действительно делало то, что вы хотите, я не могу сказать, не зная больше о ваших таблицах.
Не связан с StackOverflow