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

É possível mover um registro de uma tabela para outra usando uma única instrução SQL?


Não, você não pode mover registros em uma instrução SQL. Você tem que usar um INSERT seguido por um DELETE demonstração. Você deve agrupar essas declarações em uma transação , para garantir que a operação de cópia permaneça atômica.
START TRANSACTION;

INSERT INTO 
    new_table 
SELECT 
    *
FROM
    old_table
WHERE
    some_field = 'your_criteria';

DELETE FROM old_table WHERE some_field = 'your_criteria';

COMMIT;