oracle数据库分页只有从第一条记录开始查好使

oracle数据库分页只有从第一条记录开始查好使,第1张

下面两种用可以用rownum的变通方式实现分页

select

from

(select

rownum

row_num,month,sell

from

(select

month,sell

from

sale

group

by

month,sell)

)

where

row_num

between

5

and

9;网友评论

select

dmprow_num,dmprequirement_id

from

(select

rownum

as

row_num,

requirement_id

from

(select

requirement_id

from

requirement

order

by

requirement_id

desc)

)

dmp

where

row_num

between

10

and

20;网友评论

对的,你说的对,但是rowCount 不行吧,我一直用rownum,是了一下rowCount也不行,但是建议你这样写:

select /+first_rows(10)/ b from

(select /+first_rows(10)/ a,rownum rnum from

(select /+first_rows(10)/ from student ) a where rownum<= "+currentPagepageSize+"

)b

where rnum>= (currentPage-1)pageSize;

这个意思就是认为的在sql中添加hint 数据库返回指定条目的数据是最快的。

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 arid = browid;

以上就是关于oracle数据库分页只有从第一条记录开始查好使全部的内容,包括:oracle数据库分页只有从第一条记录开始查好使、oracle分页 语句、oracle分页查询语句怎么写每页查询10条等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9440884.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存