oracle分页查询 为什么第一页显示第1条,第10条第100条及以后数据
2017-01-18
展开全部
oracle分页查询 为什么第一页显示第1条,第10条第100条及以后数据
1、通常的分页写法,也是第一种分页方法,类似如下方式:
select * from (
select a.*, rownum rn from
(select * from test a order by object_name) a
where rownum <=1000)
where rn > 990;
这种方式,是对表进行排序翻页,比较常见,但是,第一页与第1000页的性能差异还是挺明显的。
2、第二种的分页写法是对索引进行翻页操作,然后根据rowid 去表中取数据。 这种方式,第一页与第1000页性能相差不大。
以下语句虽然使用HINT指定使用索引, 但是仍然没有生效。
select b.* from (
select * from (
select a.*, rownum rn from
(select /*+ index(a ix_object_name) */ rowid rid from test a order by object_name) a
where rownum <=20)
where rn > 10) a, test b
where a.rid = b.rowid;
1、通常的分页写法,也是第一种分页方法,类似如下方式:
select * from (
select a.*, rownum rn from
(select * from test a order by object_name) a
where rownum <=1000)
where rn > 990;
这种方式,是对表进行排序翻页,比较常见,但是,第一页与第1000页的性能差异还是挺明显的。
2、第二种的分页写法是对索引进行翻页操作,然后根据rowid 去表中取数据。 这种方式,第一页与第1000页性能相差不大。
以下语句虽然使用HINT指定使用索引, 但是仍然没有生效。
select b.* from (
select * from (
select a.*, rownum rn from
(select /*+ index(a ix_object_name) */ rowid rid from test a order by object_name) a
where rownum <=20)
where rn > 10) a, test b
where a.rid = b.rowid;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |