oracle先排序再分页

只作简单记录oracle

 

按操做时间排序1

SELECT A.*, ROWNUM RN FROM (SELECT * FROM v_log) A ORDER BY operatetime DESC 

结果spa

能够发现,按时间排序了,可是rownum并非从小到大,由于oracle是先生成rownum,再进行排序,须要在套一层查询code

 

 

按操做时间排序2

    SELECT T.*, rownum RN FROM(
      SELECT * FROM (SELECT * FROM v_log) ORDER BY operatetime DESC 
    ) T

结果blog

顺序正确,rownum正确,在此基础上再套一层查询进行分页排序

 

 

按操做时间排序并分页

SELECT T2.* from(    
SELECT T.*, rownum RN FROM(
SELECT * FROM (SELECT * FROM v_log) ORDER BY operatetime DESC 
)T) T2 WHERE RN BETWEEN 1 and 10

结果class

相关文章
相关标签/搜索