Jika dalam database yang anda miliki terdapat baris data yang berulang atau terjadi duplikat baris data, anda dapat menghapus duplikasi tersebut dengan mudah hanya dengan menggunakan script MySQL.
Artikel Menarik Lainnya
Siapkan contoh tabel data
Sebelum kita mulai, siapkan tabel dengan nama “duplicate_row” dengan struktur dan data seperti berikut:
CREATE TABLE `duplicate_row` (
`id` int(11) DEFAULT NULL,
`refID` int(11) DEFAULT NULL,
`data` varchar(7) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 PACK_KEYS=0;
INSERT INTO `duplicate_row` (`id`, `refID`, `data`) VALUES
(1, 3526, 'aaaaaaa'),
(2, 3527, 'bbbbbbb'),
(3, 3528, 'ccccccc'),
(4, 3529, 'ddddddd'),
(5, 3527, 'eeeeeee'),
(6, 3528, 'fffffff'),
(7, 3527, 'ggggggg');
COMMIT;
Hapus baris duplikat menggunakan DELETE JOIN
- Buka phpMyAdmin dan pilih nama database dari tabel “duplicate_row“. Kemudian klik tab “SQL”. Selanjutnya salin script berikut ini.
DELETE t1 FROM duplicate_row t1
JOIN duplicate_row t2
ON t2.refID = t1.refID
AND t2.id < t1.id
- Kemudian klik tombol “Go” untuk menjalankan script.
- Script tersebut akan menghapus semua baris duplikat dan mempertahankan baris dengan “id” terkecil.
- Untuk mengubah kriteria penghapusan ubah script pada bagian “AND ” sesuai dengan yang anda inginkan.
Selamat mencoba…
Semoga bermanfaat….