Oracle veri-tabanın da her hangi bir verini mükerrer çift olup olmadığını sorgulamak için alta benzer sorguları kendi verileri nize göre kontrol edebilirsiniz
select tc_kimlik_no ,count(*)
from kimlik
group by tc_kimlik_no having count(*)>1;
Yukarıdaki SQL ile kimlik tablosunda aynı tc_kimlik_no olan hastaları listeliye bilirsiniz
Önemli olan burda asıl kayıtları bırakıp mükerrer olanları bulmaktadır.Bunun içinde MAX () komutunu kullana bilirsiniz.Yani;
select tc_kimlik_no ,count(*),max(rowid)
from kimlik
group by tc_kimlik_no having count(*)>1
sql ile şunu demek istediniz.İlk açılan tc kimlik no kalsın ama ondan sonraki aynı tc kimlik no ait tüm kayıtlar en büyüğük olanı gelsin
Silmek için ise eşleyen rowid’leri alta belirtilen sql ile silebilirsiniz
select max(rowid) from kimlik
group by tc_kimlik_no having count(*)>1;