select a.* from 表a a where exists(select 1 from 表a where fff=a.fff and ddd!=a.ddd)

解决方案 »

  1.   

    是否是这样的那?
    --原数据
    -----------------------------------
    1 1 两个都是一
    1 2 一个1一个2
    2 1 一个2一个1
    2 2 两个2
    3 1 一个3一个1
    -----------------------------------
    --语句
    select * from a t1 inner join 
    (select fff from a group by fff having count(1) > 1
    )t2 on t1.fff=t2.fff--得到的数据
    -----------------------------------
    1 1 两个都是一
    1 2 一个1一个2
    2 1 一个2一个1
    2 2 两个2
    ------------------------------------
      

  2.   

    select distinct a.* from 表a a,表a b where a.fff=b.fff and a.ddd<>b.ddd
      

  3.   

    fff和ddd联合做主建,ccc表示时间字段
    如果fff相同ddd不同(存在两条以上),当ddd=2时就显示这一条记录,否则如果没有ddd=2的情况就显示:ccc字段时间最大的那一条,保证最后查出的只有一条记录
      

  4.   

    wgsasd311 的方式比较好,同样效果的表达方式:select a.* from 表a a inner join 表a b on a.fff=b.fff where a.ddd<>b.ddd order by a.fff
      

  5.   

    我想最后查出来就一条数据???fff和ddd联合做主建,ccc表示时间字段
    如果fff相同ddd不同(存在两条以上),当ddd=2时就显示这一条记录,否则如果没有ddd=2的情况就显示:ccc字段时间最大的那一条,保证最后查出的只有一条记录
      

  6.   

    select distinct a.* from 表a a,表a b where a.fff=b.fff and a.ddd<>b.ddd