Mysql
 sql >> Database >  >> RDS >> Mysql

INSERT IN...SELECT per tutte le colonne MySQL

La sintassi corretta è descritta nel manuale . Prova questo:

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 le colonne id sono una colonna a incremento automatico e hai già dei dati in entrambe le tabelle, in alcuni casi potresti voler omettere l'id dall'elenco delle colonne e generare invece nuovi id per evitare di inserire un id che esiste già nell'originale tavolo. Se la tua tabella di destinazione è vuota, questo non sarà un problema.