比如说 select b,c from aaa order by b,c 这时会有多个记录出现,我现在想删除这个查询结果里面除第一条记录外的所有其它记录,如何写语法呢? 

解决方案 »

  1.   

    select b, c from(select b,c, rownum as id from aaa order by b,c) where id != 1;
      

  2.   

    select b, c from(select b,c from aaa order by b,c) where rownum<= 1;
      

  3.   

    查询第一条
    select b, c from(select b,c, rownum as id from aaa order by b,c) where id = 1;
    删除  除了第一条的
    delete from aaa
    where rowid not in (select rowid from (select b,c, rownum as id from aaa order by b,c) where id = 1);
      

  4.   

    同意 airson 79
    select b, c from(select b,c from aaa order by b,c) where rownum <= 1;先排序再對其查詢