Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memadam Baris Pendua dengan Cekap dari Jadual Tanpa Membuat Baris Baharu?

Bagaimana untuk Memadam Baris Pendua dengan Cekap dari Jadual Tanpa Membuat Baris Baharu?

Mary-Kate Olsen
Lepaskan: 2025-01-02 15:16:39
asal
898 orang telah melayarinya

How to Efficiently Delete Duplicate Rows from a Table Without Creating a New One?

Memadamkan Baris Pendua daripada Jadual: Pendekatan Cekap

Lewahan data dalam pangkalan data boleh membawa kepada ketidaktepatan dan ketidakcekapan. Oleh itu, adalah penting untuk mengalih keluar rekod pendua untuk mengekalkan integriti data. Walaupun mencipta jadual baharu dengan hanya entri yang berbeza ialah pilihan, kami akan meneroka pendekatan langsung untuk memadamkan entri pendua daripada jadual sedia ada tanpa membuat yang baharu.

Pertimbangkan jadual dengan medan seperti id, tindakan, dan L11_data. id adalah unik untuk setiap baris, L11_data adalah unik dalam medan tindakan masing-masing dan tindakan mewakili industri. Matlamatnya adalah untuk mengalih keluar nama syarikat pendua dalam L11_data untuk industri masing-masing.

Untuk mencapai matlamat ini, kami boleh menggunakan medan ID unik untuk mengenal pasti dan mengalih keluar baris pendua. Pertanyaan berikut dengan cekap menghapuskan rekod berlebihan tanpa membuat jadual baharu:

DELETE FROM Table
WHERE ID NOT IN
(
SELECT MIN(ID)
FROM Table
GROUP BY Field1, Field2, Field3, ...
)
Salin selepas log masuk

Dalam pertanyaan ini, Jadual mewakili jadual sedia ada dan ID ialah medan pengecam unik. Senarai medan yang dinyatakan dalam GROUP BY termasuk semua medan kecuali untuk ID.

Adalah penting untuk ambil perhatian bahawa kecekapan pertanyaan ini bergantung pada bilangan medan dan baris dalam jadual. Walau bagaimanapun, untuk kebanyakan senario praktikal, ia harus berprestasi secukupnya.

Selain itu, jika anda tidak mempunyai indeks unik pada jadual, adalah sangat disyorkan untuk menambah satu. Ini bukan sahaja meningkatkan integriti data, tetapi ia juga membolehkan anda melaksanakan pertanyaan yang dinyatakan di atas dengan cekap.

Atas ialah kandungan terperinci Bagaimana untuk Memadam Baris Pendua dengan Cekap dari Jadual Tanpa Membuat Baris Baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan