oracle分页的问题

lvlvlvlylyly 2012-07-30 12:12:24
请教:分页的时候,如何通过命令得到一张表里的记录有几页?
如果通过select count(*) from ** 的命令,在表里的记录非常大的情况下,会不会很慢??

有没有什么比较快的方式返回??
...全文
130 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
人生无悔 2012-07-30
  • 打赏
  • 举报
回复
select count(1) from 你的表

select count(主键列) from 你的表

select count(*) from 你的表
可以测下几个的速度,不过结果是一样的,前面的可能会快些
秋雨飘落 2012-07-30
  • 打赏
  • 举报
回复
select count(*) from 这个是必须的吧,只有知道总量了,才知道要多少页呢
lvlvlvlylyly 2012-07-30
  • 打赏
  • 举报
回复
谢谢各位!
睿智天成 2012-07-30
  • 打赏
  • 举报
回复
如果数据不进场进行增删操作的话,建聚簇索引可以提高查询速度,数据库对于100万记录的简单数据表执行上述语句,时间在1分钟以上。如果在表的某个字段上做聚簇索引,第一次执行该语句的时间和没有索引的时间差不多,之后执行上述语句,速度很快,在1秒中以内,但当表的记录数发生较大变化后,再执行该语句又会经历一次耗时的过程。
xingyanfeng775 2012-07-30
  • 打赏
  • 举报
回复
oracle分页效率会出现这种问题,数据量比较大的时候,count会比较慢。现在好像没有什么好的解决办法。
小德 2012-07-30
  • 打赏
  • 举报
回复
基本上使用诸如count(1)
yuyu1980 2012-07-30
  • 打赏
  • 举报
回复
select count(1) from ** 不会太慢的

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧