July 7, 2024 mysql

Cara Menduplikasi Data di MySQL

Untuk menduplikasi data tertentu di mysql, bisa dengan menggabungkan klausa INSERT dan SELECT.

Data yang akan diduplikasi diambil menggunakan SELECT dari tabel itu sendiri dengan kolom-kolom yang diambil sesuai dengan kolom yang akan ditambahkan.

Contoh.

INSERT INTO `products` (`name`)
SELECT `name` FROM `products`;

Jika data tertentu saja yang ingin diduplikasi, bisa ditambahkan klausa WHERE.

INSERT INTO `products` (`name`)
SELECT
    `name`
FROM `products`
WHERE `type` = 'reguler';

Jika data yang diduplikasi ingin diubah nilai kolom-kolomnya, bisa diatur di klausa SELECT-nya.

INSERT INTO `products` (`name`, `type`)
SELECT
    CONCAT(`name`, ' FREE'),
    'free'
FROM `products`
WHERE `type` = 'reguler';

Sumber: https://dba.stackexchange.com/questions/142414/easiest-way-to-duplicate-rows