Как реализовать обновление ячейки таблицы из другой таблицы?

Mysql:
Есть такая структура в таблице 1
id | query | amount

И есть другая таблица
query | amount

В первой ячейка query уникальная, во второй же могут повторятся
Результаты из второй ячейки беру запросом:
select sum(amount) as amount from table2 group by query


Помогите придумать запрос, который будет обновлять amount первой таблицы, беря результаты из второй.
  • Вопрос задан
  • 2606 просмотров
Решения вопроса 2
Melkij
@Melkij
PostgreSQL DBA
Т.е. amount в первой таблице должен быть суммой таких же query из второй таблицы?

update table1 left join (select query, sum(amount) as amount from table2 group by query) as t2 using(query) set table1.amount = ifnull(t2.amount, 0 /*значение по-умолчанию, если в table2 таких query нет ни одного*/)
Ответ написан
Комментировать
BuriK666
@BuriK666
Компьютерный псих
Как-то так.
UPDATE `table1` AS t1 SET `amount` = (SELECT SUM(`amount`) FROM `table2` AS t2 WHERE t2.`query` = t1.`query` );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы