Bagaimana cara menghapus baris duplikat dari tabel SQL Server?



Coba Instrumen Kami Untuk Menghilangkan Masalah

Saat mendesain objek di SQL Server, kita harus mengikuti praktik terbaik tertentu. Misalnya, tabel harus memiliki kunci utama, kolom identitas, indeks berkerumun dan tidak terkluster, integritas data, dan batasan kinerja. Tabel SQL Server tidak boleh berisi baris duplikat sesuai dengan praktik terbaik dalam desain database. Namun, terkadang kita perlu berurusan dengan database di mana aturan ini tidak diikuti atau di mana pengecualian dimungkinkan ketika aturan ini sengaja dilewati. Meskipun kami mengikuti praktik terbaik, kami mungkin menghadapi masalah seperti baris duplikat.



Misalnya, kita juga bisa mendapatkan jenis data ini saat mengimpor tabel perantara, dan kita ingin menghapus baris yang berlebihan sebelum benar-benar menambahkannya ke tabel produksi. Selain itu, kami tidak boleh meninggalkan prospek untuk menggandakan baris karena informasi duplikat memungkinkan penanganan permintaan yang berulang, hasil pelaporan yang salah, dan lainnya. Namun, jika kita sudah memiliki baris duplikat di kolom, kita perlu mengikuti metode khusus untuk membersihkan data duplikat tersebut. Mari kita lihat beberapa cara dalam artikel ini untuk menghapus duplikasi data.



Tabel yang berisi baris duplikat



Bagaimana cara menghapus baris duplikat dari tabel SQL Server?

Ada beberapa cara di SQL Server untuk menangani rekaman duplikat dalam tabel berdasarkan keadaan tertentu seperti:

Menghapus duplikat baris dari indeks tabel SQL Server yang unik

Anda dapat menggunakan indeks untuk mengklasifikasikan data duplikat dalam tabel indeks unik lalu menghapus rekaman duplikat. Pertama, kita perlu membuat database bernama “test_database”, lalu buat tabel “ Karyawan 'Dengan indeks unik dengan menggunakan kode yang diberikan di bawah ini.

GUNAKAN master GO BUAT DATABASE test_database GO GUNAKAN [test_database] GO BUAT TABEL Karyawan ([ID] INT NOT NULL IDENTITY (1,1), [Dep_ID] INT, [Name] varchar (200), [email] varchar (250) NULL , [kota] varchar (250) NULL, [alamat] varchar (500) NULL CONSTRAINT Primary_Key_ID PRIMARY KEY (ID))

Outputnya akan seperti di bawah ini.



Membuat tabel 'Karyawan'

Sekarang masukkan data ke dalam tabel. Kami juga akan menyisipkan baris duplikat. 'Dep_ID' 003.005 dan 006 adalah baris duplikat dengan data serupa di semua bidang kecuali kolom identitas dengan indeks kunci unik. Jalankan kode yang diberikan di bawah ini.

GUNAKAN [test_database] GO INSERT INTO Employee (Dep_ID, Name, email, city, address) VALUES (001, 'Aaaronboy Gutierrez