Dalam Oracle, anda boleh menggunakan fungsi count() dengan pernyataan pertanyaan pilih untuk menanyakan data berulang Sintaks ialah "pilih Kod pengguna daripada kumpulan pengguna mengikut kod pengguna yang mempunyai bilangan(Kod pengguna)>1".
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.
1 Cari rekod pendua yang berlebihan dalam jadual dinilai berdasarkan satu medan (Kod pengguna)
select * from user where userCode in (select userCode from user group by userCode having count (userCode) > 1)
. 2. Padamkan rekod pendua berlebihan dalam jadual Rekod pendua dinilai berdasarkan satu medan (Kod pengguna), hanya meninggalkan rekod dengan rowid terkecil
delete from user where userCode in (select userCode from user group by userCode having count (peopleId) > 1) and rowid not in (select min(rowid) from user group by userCode having count(userCode)>1)
3. Cari rekod pendua berlebihan (berbilang medan) dalam jadual
select * from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1)
4 Padamkan rekod pendua berlebihan (berbilang medan) dalam jadual, hanya tinggalkan rekod dengan rowid terkecil
delete from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1) and rowid not in (select min(rowid) from user group by userCode,userName having count(*)>1)
5 dalam jadual ( Pelbagai medan), tidak termasuk rekod dengan rowid terkecil
select * from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1) and rowid not in (select min(rowid) from user group by userCode,userName having count(*)>1)
Tutorial yang disyorkan: "Tutorial Video Oracle"
Atas ialah kandungan terperinci Bagaimana untuk menanyakan data pendua dalam oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!