sql基础知识:分页+排序

时间:2022-04-22
本文章向大家介绍sql基础知识:分页+排序,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Oracle的分页还真是挺恶心地,不像mysql直接Limit就搞定

select name from student limit 0,20;

Oracle需要借助rownum实现:

select * 
    from (
        select s.*, rownum as rn from student s where rownum <= 10
    ) m
 where m.rn > 0

如果要增加排序,可以引入order by

select * from (
    select c.*, rownum as rn from (
        select rownum as row_num, b.* from (
            select * from student
            --这里可以写复杂的join逻辑
        ) b
        order by b.storecode desc
    ) c
    where rownum <= 10
) m
where m.rn > 0