Mysql
 sql >> Database >  >> RDS >> Mysql

Aggiornamento MySQL utilizzando il risultato sum() su più tabelle

Non puoi utilizzare un group by all'interno di una dichiarazione di aggiornamento. Dovrai utilizzare una selezione secondaria per eseguire il raggruppamento.

Qualcosa del genere:

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