select your_column /+ INDEX_DESC(your_column) */ 
from your_table
where rownum <= 10 condition: create an index on your_column 
           
Others : I don't think it will be slow as it is using index ;-)

解决方案 »

  1.   

    INDEX_DESC
    是不是进行倒序了呢?这样,如果我有一百万数据,进行倒序的话,测试结果是很慢的。
      

  2.   

    我要做一个分页程序,driverid为自增流水。
    第一页 “select * from table_name where rownum<10”
    下一页:取大于当前页记录的最后一条记录的最小十条记录
    "select * from table_name where driverid>10 and rownum<10"但是上一页:取小于当前页记录的第一条记录的最大十条记录高手们,怎么做啊?
      

  3.   


    select * from table_name where rownum<(10*n)
    minus
    select * from table_name where rownum<(10*(n-1))
    n为变量第一页为1依此类推
      

  4.   

    select * from table_name where rownum<10是不能保证按你的driverid排序的。
      

  5.   

    to bobfang(匆匆过客) 
        如果我的driverid已经排好序了,是自增的,也不行吗?
      

  6.   

    to bobfang(匆匆过客) 
        如果我的driverid已经排好序了,是自增的,也不行吗?
    不行,绝对不行。应为你的driverid是不连续的,想想,如果删除了一条记录则么办?
      

  7.   

    用 < 、 > 号,行不行?
    你式一式!