Oracle ialah salah satu sistem pengurusan pangkalan data hubungan terbesar di dunia Fungsinya yang berkuasa dan pelbagai aplikasi menjadikannya bahagian yang amat diperlukan dalam aplikasi peringkat perusahaan. Dalam aplikasi ini, penyahduplikasian data adalah tugas biasa. Mengalih keluar rekod pendua boleh meningkatkan kualiti data dan mengurangkan ruang storan dan masa pertanyaan.
Dalam Oracle, anda boleh menggunakan berbilang kaedah untuk mengalih keluar rekod pendua:
Gunakan kata kunci DISTINCT untuk mengembalikan set hasil yang unik , yang bermaksud tidak akan ada sebarang rekod pendua. Sebagai contoh, pertanyaan berikut akan mengembalikan semua nama pelanggan yang berbeza:
PILIH NAMA_PELANGGAN YANG DISTINCT DARIPADA PELANGGAN;
KUMPULAN MENGIKUT klausa Digunakan untuk mengumpulkan dan mengembalikan satu baris untuk setiap kumpulan. Dengan menggabungkan beberapa lajur, anda boleh mencari nilai unik. Contohnya, pertanyaan berikut akan mengembalikan bilangan pelanggan di setiap bandar:
PILIH BANDAR, KIRA(*) DARI KUMPULAN PELANGGAN MENGIKUT BANDAR >
Oracle termasuk beberapa fungsi terbina dalam untuk menghapuskan rekod pendua , seperti:MAX(): Mengembalikan nilai maksimum dalam kumpulan.
Menggunakan tetingkap functions
Fungsi tetingkap ialah fungsi khas yang mengira nilai merentas keseluruhan set hasil dan bukannya baris individu. Gunakan fungsi tetingkap untuk menghapuskan rekod pendua sambil mengekalkan data asal.PILIH
DARI
ROW_NUMBER() OVER(PARTITION BY SALE_DATE ORDER BY SALE_AMOUNT DESC) RN, SALE_ID, SALE_AMOUNT, SALE_DATE
Ringkasan
SALES
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar rekod pendua dalam Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!