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

MySql actualiza dos tablas a la vez

Debería ser posible con una actualización de varias tablas, como se describe en la documentación.

http://dev.mysql.com/doc/refman/5.5 /es/actualizar.html

UPDATE Table_One a INNER JOIN Table_Two b ON (a.userid = b.userid)
SET
  a.win = a.win+1, a.streak = a.streak+1, a.score = a.score+200,
  b.win = b.win+1, b.streak = b.streak+1, b.score = b.score+200 
WHERE a.userid = 1 AND a.lid = 1 AND b.userid = 1

Nota:las mesas múltiples no son compatibles con LIMIT, por lo que esto podría causar más problemas dependiendo de los detalles.

Los procedimientos o transacciones almacenados pueden ser una mejor solución.