select DISTINCT message_id from maytable

解决方案 »

  1.   

    楼上的大哥,我需要显示的是两个字段:message_id和dept
      

  2.   

    select distinct message_id,dept from table;
      

  3.   

    楼上的也错了:我要的是:只要message_id相同,就只显示一条,
    而楼上的是message_id相同,并且dept也相同就显示一条
      

  4.   


    如果是只显示一条,可以试试这个:select * from mytable where rowid in (select min(rowid) from mytable group by message_id );但是,不能保证取到的是第一条满足条件的值。
    估计要用存储过程了~~
      

  5.   

    利用rownum:
    select 
           m.message_id,
           dept
    from 
           (select message_id,dept,rownum row_id from  mytable) m ,
           (select message_id,min(rownum) row_id from mytable group by message_id) p
    where 
           m.message_id=p.message_id
           and m.row_id=p.row_id
      

  6.   

    select a.* from mytable a,
    (
       select min(rowid) no from mytable group by message_id
    ) b
    where a.rowid=b.no;
      

  7.   

    select * from mytable A where A.rowid > (select min(B.rowid) from mytable B where A.message_id = B.message_id)
      

  8.   

    select message_id,min(dept) from mytable group by message_id