如何查询oracle数据库一个表中的多条记录是否有重复

原文链接:http://blog.chinaunix.net/uid-16175364-id-2752272.html

如何查询oracle数据库一个表中的很多条记录是否有重复?重复的判断标准是指定为几个字段中只要有任意的一个字段中有重复就将重复的记录列出来。


  Select   *   From   Table1   a   
  Where   Exists   (   
  Select   *   from   Table1   
  where   id=a.id   
  Group   By   ID   
  Having   Count(*)   >   1   //查出两条以上的记录   
  )   
    
  or:   
    
  Select   *   From   Table1     
  Where   id   in   (   
  Select   id   from   Table1   
  Group   By   ID   
  Having   Count(*)   >   1   //查出两条以上的记录   
  )   

  or:
  Select   *  From   yourtable   A   
    Where   (Select   count(*)   From   yourtable   Where   Field1=A.Field1)>1   
          or   (Select   count(*)   From   yourtable   Where   Field2=A.Field2)>1
          or   (Select   count(*)   From   yourtable   Where   Field3=A.Field3)>1             ...   
    Order   By   A.Field1,Field2,Field3   ...

你可能感兴趣的:(问题记录)