因为oracle的优化器对这样一个全是desc的order by, 可以使用普通索引的降序扫描(descending)的方式进行优化,完全不需要创建desc降序索引:
如果上面的order by...建议大家在遇到类似区间检索的业务需求,参考我公众号文章的做法,实践证明是最佳的....案例3:
原作者对这个SQL的优化建议是:
原作者把原来的top n写法改成4层的分页查询, 我个人认为有点多余:
如果原SQL是一个分页查询多次翻页的SQL,那么这个改写完全没有问题,在页数较大时...,比普通分页的3层标准分页写法会有较大的性能提升;
但是原SQL只是取top n,不存在翻页, 改写后的SQL不会因为改写发生任何性能提升,这里有点生搬硬套的感觉....索引,关系型数据库的一个非常重要的理论,还需要大家深入理解.