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

INSERT INTO...SELECT para todas as colunas MySQL


A sintaxe correta é descrita no manual . Tente isto:
INSERT INTO this_table_archive (col1, col2, ..., coln)
SELECT col1, col2, ..., coln
FROM this_table
WHERE entry_date < '2011-01-01 00:00:00';

Se as colunas de id forem uma coluna de incremento automático e você já tiver alguns dados em ambas as tabelas, em alguns casos você poderá omitir o id da lista de colunas e gerar novos ids para evitar inserir um id que já exista no original tabela. Se sua tabela de destino estiver vazia, isso não será um problema.