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

quantità di aggiornamento mysql sull'array completo dell'ordine

Probabilmente è meglio farlo come un unico pezzo di SQL:-

UPDATE stock a INNER JOIN order b ON a.part = b.part 
SET a.available = a.available - b.qty
WHERE  b.invoice` = '$order'

Fai attenzione a non ripetere l'operazione più volte senza in alcun modo verificare che un ordine non sia già stato utilizzato per aggiornare lo stock

In questo modo, se hai 1000 articoli nell'ordine, è una singola query. Fare una selezione e poi scorrere i risultati richiederebbe 10001 query.