oracle分页写法

$p = $_GET['p'] ? $_GET['p'] : 1;    //页码

$offset = 30;      //每页的数目

$star =  $offset * $p - $offset;   //起始行数
            $max = $start + $offset;   //需要查出的最大行数, 也可以是$offset*$p
                select * from 
                    (select t.*, ROWNUM rn from 
                            (
                            select 
                                URP_SCHEDULE.*, to_char(URP_SCHEDULE.RES_DATE,'yyyy-mm-dd') AS R_DATE,
                                URP_DEPT.NAME AS DEPT_NAME,
                                URP_DOCTOR.NAME AS DOCTOR_NAME 
                            from 
                                URP_SCHEDULE,URP_DEPT,
                                URP_DOCTOR 
                            WHERE 
                                URP_SCHEDULE.DOCTOR_CODE=URP_DOCTOR.CODE AND 
                                URP_SCHEDULE.DEPT_CODE=URP_DEPT.CODE 
                            order by urp_schedule.res_date desc
                            ) 
                    t where ROWNUM <= $max) 
                where rn > ".$start;

MYSQL的分页思想是从某一行开始($start), 显示多少行($offset);

ORACLE的分页思想是从某一行开始($start)到某一行之间($max);

猜你喜欢

转载自blog.csdn.net/d429667292/article/details/83415200