Katakanlah Anda perlu menyalin data dari satu tabel ke tabel lain. Anda dapat memasukkan data dari tabel ke tabel lain di MySQL.
Pernyataan INSERT INTO SELECT menyalin data dari satu tabel ke tabel lainnya. Baris yang ada di tabel target tidak terpengaruh.
Sintaks
Sisipkan data dari satu tabel ke tabel lain untuk semua kolom,
INSERT INTO table2 SELECT * FROM table1;
Sisipkan data dari satu tabel ke tabel lain untuk kolom tertentu,
INSERT INTO table2 column1, column2.. SELECT column1, column2, .. FROM table1;
Contoh
Pertimbangkan 2 tabel contoh, Pengguna dan Pelanggan
Users +------+--------------+-------------+ | id | user_name | location | +------+--------------+-------------+ | 1 | Jim | London | | 4 | Rocky | US | | 7 | Dan | Italy | | 3 | Bill | France | +------+--------------+-------------+
Customers +-------+------------------+--------+------------+ | id | customer_name | age | location | +-------+------------------+--------+------------+ | 11 | John | 23 | US | | 14 | Roger | 36 | London | | 17 | Will | 29 | Spain | | 13 | Bob | 34 | Japan | +-------+------------------+--------+------------+
Sisipkan data dari satu tabel ke tabel lain untuk beberapa kolom
mysql> INSERT INTO users (user_name, location) SELECT customer_name, location FROM customers; +------+--------------+-------------+ | id | user_name | location | +------+--------------+-------------+ | 1 | Jim | London | | 4 | Rocky | US | | 7 | Dan | Italy | | 3 | Bill | France | | 11 | John | US | | 14 | Roger | London | | 17 | Will | Spain | | 13 | Bob | Japan | +-------+-------------+-------------+
Masukkan data dari satu tabel ke tabel lain untuk beberapa kolom, hanya pelanggan yang berlokasi di 'AS'