Skip to content
FLAVIO COPES
flaviocopes.com
2026

SQL, copy data from one table to another

By Flavio Copes

Learn how to copy data from one SQL table to another with INSERT INTO and SELECT, including how to skip the primary key column to avoid duplication errors.

~~~

One of those maintenance tasks: copying data from one table to another.

You can copy all elements from a table into another like this:

INSERT INTO some_table 
SELECT * FROM other_table

Of course you can just select some if you want:

INSERT INTO some_table 
SELECT * FROM other_table WHERE list=94

If the table you’re copying to has existing data, you might have primary key duplication issues.

To leave the primary key column empty to make the table auto-fill it with its auto increment, I selected all columns except the primary key:

INSERT INTO some_table (`age`, `name`, `email`)
SELECT `age`, `name`, `email` FROM other_table

In my case id was the primary key column, and I left it out.

~~~

Related posts about database: