补充一下,pno 是表 results 中的主键

解决方案 »

  1.   

    原因是这样,  rownum的生成是根据物理顺序的, 即直接用
     select * from table1时显示的记录,  
     不信,你试试 
     select rownum,rowid from table就知道了。
     你用的order by 的话, rownum也没什么用了干趣自己写个简单的程序,如
    select min(pno) from ...
    select min(pno) from .. where pno<>up1 ;(up1为上一行的pno)
    ....共10条就可以了,而且可用程序生成速度也很快。
      

  2.   

    低版本的ORACLE不支持在子查询中排序。
    建议楼主通过临时表处理