SQL> select count(unit_code) from aff_adjust;COUNT(UNIT_CODE)
----------------
             438SQL> select count(distinct unit_code) from aff_adjust;COUNT(DISTINCTUNIT_CODE)
------------------------
                     437
我想找出这个有相同unit_code的记录,sql语句怎么写?

解决方案 »

  1.   

    SELECT DRAWING,DSNO FROM EM5_PIPE_PREFAB 
    WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5_PIPE_PREFAB D WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND 
    EM5_PIPE_PREFAB.DSNO=D.DSNO); 
    执行上述SQL语句后就可以显示所有DRAWING和DSNO相同且重复的记录。 
    删除重复记录: 
    DELETE FROM EM5_PIPE_PREFAB 
    WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5_PIPE_PREFAB D 
    WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND 
    EM5_PIPE_PREFAB.DSNO=D.DSNO); 
      

  2.   

    select * from aff_adjust
    where unit_code in
    (
    select unit_code,count(unit_code) from aff_adjust
    group by unit_code
    having on count(unit_code)>1)
    ;
      

  3.   

    select tab.aa,tab.bb from (select unit_code aa,count(unit_code) bb from aff_adjust group by unit_code) tab where tab.bb>1;应在aff_adjust表中以unit_code字段建立主键。
      

  4.   

    select * from aff_adjust where unit_code  in (select unit_code from aff_adjust group by  having count(1)>1)