------------------------------------------------------------
*
1
2
3
5
5
7
7
8
9
只显示,5,5,7,7出来,不显示别的。 也不是只要 5  5  7 7 也可能有别的 只要重复出现就显示

解决方案 »

  1.   

    select id from table 
    where id in (select id from table group by id having count(*)>1)
      

  2.   

    TRY IT ..
    SQL> SELECT * FROM TT2;       SID
    ----------
             1
             2
             3
             5
             5
             7
             7
             8
             99 rows selectedSQL> 
    SQL> SELECT *
      2    FROM TT2 T1
      3   WHERE EXISTS (
      4                 SELECT 1
      5                   FROM TT2 T2
      6                  WHERE T2.SID = T1.SID
      7                    AND T2.ROWID <> T1.ROWID
      8                );       SID
    ----------
             5
             5
             7
             7SQL> 
      

  3.   

    select * 
                from A  
               where column_1 
                  in (select column_1 
                        from A 
                    group by coulumn_1 
                      having count(1)>1)
      

  4.   

    SQL> SELECT *
      2    FROM TT2 T1
      3   WHERE EXISTS (
      4                 SELECT 1
      5                   FROM TT2 T2
      6                  WHERE T2.SID = T1.SID
      7                    AND T2.ROWID <> T1.ROWID
      8                );
    这个效率比较高
      

  5.   

    select * from  T t1 where exists(select 1 from T t2 where t1.id = t2.id and t2.rownum <> t1.rownum)