Bagaimana Menghapus Baris Pendua dari Jadual Pelayan SQL?



Cuba Instrumen Kami Untuk Menghapuskan Masalah

Semasa merancang objek dalam SQL Server, kita mesti mengikuti amalan terbaik tertentu. Sebagai contoh, jadual harus mempunyai kunci utama, lajur identiti, indeks berkelompok dan tidak tersusun, integriti data dan kekangan prestasi. Jadual SQL Server tidak boleh mengandungi baris pendua mengikut amalan terbaik dalam reka bentuk pangkalan data. Kadang-kadang, bagaimanapun, kita perlu berurusan dengan pangkalan data di mana peraturan ini tidak dipatuhi atau di mana pengecualian mungkin dilakukan apabila peraturan ini sengaja dilewati. Walaupun kami mengikuti amalan terbaik, kami mungkin menghadapi masalah seperti baris pendua.



Sebagai contoh, kami juga dapat memperoleh data jenis ini semasa mengimport jadual perantaraan, dan kami ingin menghapus baris berlebihan sebelum benar-benar menambahkannya ke dalam jadual pengeluaran. Lebih-lebih lagi, kita tidak boleh meninggalkan prospek untuk mendua baris kerana maklumat pendua memungkinkan banyak pengendalian permintaan, hasil pelaporan yang salah dan banyak lagi. Namun, jika kita sudah memiliki baris pendua di lajur, kita perlu mengikuti kaedah tertentu untuk membersihkan data pendua. Mari kita lihat beberapa cara dalam artikel ini untuk membuang penduaan data.



Jadual yang mengandungi baris pendua



Bagaimana Menghapus Baris Pendua dari Jadual Pelayan SQL?

Terdapat beberapa cara dalam SQL Server untuk menangani catatan pendua dalam jadual berdasarkan keadaan tertentu seperti:

Mengeluarkan baris pendua dari jadual SQL Server indeks unik

Anda boleh menggunakan indeks untuk mengklasifikasikan data pendua dalam jadual indeks unik dan kemudian menghapus catatan pendua. Pertama, kita perlu buat pangkalan data bernama 'test_database', kemudian buat jadual ' Pekerja ”Dengan indeks unik dengan menggunakan kod yang diberikan di bawah.

GUNAKAN master GO CREATE DATABASE test_database GO USE [test_database] GO CREATE TABLE Pegawai ([ID] INT NOT NULL IDENTITY (1,1), [Dep_ID] INT, [Name] varchar (200), [email] varchar (250) NULL , [bandar] varchar (250) NULL, [alamat] varchar (500) NULL CONSTRAINT Utama_Key_ID KUNCI PERDANA (ID))

Hasilnya seperti di bawah.



Membuat jadual 'Pekerja'

Sekarang masukkan data ke dalam jadual. Kami akan memasukkan baris pendua juga. 'Dep_ID' 003,005 dan 006 adalah baris pendua dengan data yang serupa di semua bidang kecuali lajur identiti dengan indeks kunci yang unik. Laksanakan kod yang diberikan di bawah.

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