1"."/> 1".">

Rumah >pangkalan data >Oracle >Bagaimana untuk menanyakan data pendua dalam oracle

Bagaimana untuk menanyakan data pendua dalam oracle

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBasal
2022-02-28 11:13:5239647semak imbas

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".

Bagaimana untuk menanyakan data pendua dalam oracle

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.

Cara untuk menanyakan data pendua dalam oracle

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!

Kenyataan:
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