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

Equivalente de la cláusula de retorno de Mysql

Desafortunadamente, no puede realizar tanto la inserción como la eliminación en una consulta. , pero puede hacerlo todo en una transacción si está utilizando un motor de almacenamiento transaccional (como InnoDB). Además, RETURNING es compatible con Oracle y PostgreSQL pero no con MySQL y, por lo tanto, debe escribir delete por separado y insert declaraciones.

Sin embargo, el uso de una transacción garantizará que solo los datos copiados con éxito se eliminen de la tabla A. Considere lo siguiente:

begin transaction;
insert into tableB select * from tableA where 'your_condition_here';
delete from tableA where 'your_condition_here';
commit;