select aa,bb,cc from (select rownum rrr, abc.* from abc) xwhere rrr in(select min(rrr) from (select rownum rrr, abc.* from abc) where x.bb=bb)试试,再简单的我不会写了,好像应该用rank什么的
或者 delete from tbl where rowid not in (select max(rowid) from tbl group by colb);
delete from abc a where rowid != (select max(rowid) from abc b where a.bb = b.bb)
delete from tbl
where rowid not in (select max(rowid) from tbl group by colb);