20 July 2026 mysql

Cara Duplikasi Data di MySQL

Cara menduplikasi data di MySQL bisa dengan mengkombinasikan statement SELECT dan INSERT.

Contoh ada komentar:

idcontentrating
1Terimakasih infonya.5
2Sangat bermanfaat.4

Kemdian komentar id 2 ingin diduplikasi. Berikut contoh querynya:

INSERT INTO
	comments (content, rating)
SELECT content, rating
FROM comments
WHERE id = 2;	

Hasilnya:

idcontentrating
1Terimakasih infonya.5
2Sangat bermanfaat.4
3Sangat bermanfaat.4

Pada contoh tersebut, kolom ID tidak perlu diselect karena nilainya auto_increment.

Pastikan urutan hasil SELECT dan INSERT VALUES sesuai agar hasilnya benar.

Duplikasi dengan Nilai Custom

Kalau ada kolom yang tidak ingin diduplikasi, maka kolom tersebut tidak perlu diselect. Atau bisa juga diisi dengan nilai custom di dalam SELECT.

Contohnya pada data di atas komentar id 2 ingin diduplikasi content nya saja, ratingnya dibuat 0. Maka querynya:

INSERT INTO
	comments (content, rating)
SELECT content, 0
FROM comments
WHERE id = 2;

Hasilnya:

idcontentrating
1Terimakasih infonya.5
2Sangat bermanfaat.4
3Sangat bermanfaat.0

Duplikat Data Dari Tabel yang Berbeda

Duplikasi data juga bisa dilakukan dari tabel yang berbeda.

Contoh ada tabel customers:

idname
1Oblak
2Fuad

Lalu ingin diduplikasi semua customers ke tabel users. Dengan tambahan email dari kolom name.

Contoh query:

INSERT INTO
	users (name, email)
SELECT name, CONCAT(LOWER(REPLACE(name, ' ', '_')), '@example.com')
FROM customers;

Hasilnya di tabel users:

idnameemail
1Oblakoblak@example.com
2Fuadfuad@example.com

Referensi: https://dev.mysql.com/doc/refman/9.7/en/insert-select.html