Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Equivalente da cláusula de retorno do MySQL


Infelizmente, não é possível inserir e excluir em uma consulta , mas você pode fazer tudo em uma transação se você estiver usando um mecanismo de armazenamento transacional (como o InnoDB). Além disso, RETURNING é suportado pelo Oracle e PostgreSQL, mas não pelo MySQL e, portanto, você precisa escrever delete separado e insert declarações.

No entanto, usar uma transação garantirá que apenas os dados copiados com êxito serão excluídos da tabelaA. Considere o seguinte:
begin transaction;
insert into tableB select * from tableA where 'your_condition_here';
delete from tableA where 'your_condition_here';
commit;