mysql分页采用limit关键字,Oracle采用rownum关键字。
举个mysql分页查询例子:
如果是每页十条数据查询就是下面这样,
selec * from t limit 1,10;从第一条查询到第十条;(第一页)
selec * from t limit 11,10;从第十条查询到第二十条;(第二页)
selec * from t limit 21,10;从第十条查询到第二十条;(第三页)
ps:记得分页时页数每次加1,不然除了第一次查询是10次,后面的都是9次。
简单的使用方法就是这样 selec * from t limit 页数+1,查询条数;参数由后台控制。
举个Oracle分页查询例子:
select * from ( select rownum rowno,t.* from test t where rownum <= 10 ) test where test.rowno >= 1;
如果是每页十条数据查询就是下面这样,
select * from ( select rownum rowno,t.* from test t where rownum <= 10 ) test where test.rowno >= 1;(第一页)
select * from ( select rownum rowno,t.* from test t where rownum <= 20 ) test where test.rowno >= 11;(第二页)
select * from ( select rownum rowno,t.* from test t where rownum <= 30 ) test where test.rowno >= 21;(第三页)
结论同上,大家多尝试一下。Oracle的分页SQL是我在百度上面查到说是效率最高的分页SQL。用了group by 就会影响效率,大家也可以在测试数据库里面测试一下。

发表评论

电子邮件地址不会被公开。 必填项已用*标注