1、使用rownum一定要包含第一条记录,如果不包含第一条记录,则不会返回结果。因为rownum是伪列,是有结果集之后再加上的列。而且是从1开始排列的。
2、在使用rownum时,只有东order by的字段是主键时,查询结果才会先排序后再计算rownum,反之,如果排序字段不是主键,则会出现先有rownum,在对结果集进行排序的情况。
3、排序分页是注意,oracle对排序结果及做了优化,如果排序字段存在多条相同记录时,可能在多页中出现相同的记录;解决方法是排序时,除了使用原本的排序字段,在加上能确定唯一字段的字段进行排序。