sql >> Base de Datos >  >> RDS >> Mysql

Actualización de MYSQL usando el resultado sum () en varias tablas

No puedes usar un group by dentro de una declaración de actualización. Deberá usar una subselección para hacer la agrupación.

Algo como esto:

UPDATE products p,( SELECT products_id, sum(attributes_stock)  as mysum
                   FROM products_attributes GROUP BY products_id) as s

   SET p.products_quantity = s.mysum
  WHERE p.products_id = s.products_id