喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 喜悦证交所 | 帮助

RSS 订阅当前论坛  

[北京]代朋友公司招聘PHP高级程序员多名

上一主题 下一主题
 26  2/3  <  1  2  3  > 
     
标题: [问题] 如何实现上千万条数据的分页显示?  
 
zshtom
中级会员
Rank: 3Rank: 3
初级会员



UID 66877
精华 0
积分 249
帖子 308
金钱 249 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2005-9-23
状态 在线
回复 #9 levie 的帖子

这是一个优化的方法



什么才是优秀的程序员呢?
2008-5-1 08:59 PM#11
查看资料  发短消息  顶部
 
zshtom
中级会员
Rank: 3Rank: 3
初级会员



UID 66877
精华 0
积分 249
帖子 308
金钱 249 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2005-9-23
状态 在线
[推荐阅读] 呃,现在搞discuz!,需要人,以后会搞别的
一般网站 都允许看 一定数据量 比如 前 1000页 不可能把所有的都放在那 还有就是 把总数记录在另外的地方 减少数据库查询 但是 有数据修改的时候要操作相应的修改



什么才是优秀的程序员呢?
2008-5-1 09:00 PM#12
查看资料  发短消息  顶部
 
k6bar
注册会员
Rank: 2



UID 110114
精华 0
积分 52
帖子 67
金钱 52 喜悦币
威望 0
人脉 0
阅读权限 20
注册 2008-2-14
状态 离线
[推荐阅读] 如何计算一个时间段的周次
可以考虑将总数缓存起来,要不然每次都查一次,慢死
另可考虑限制查询啊,我想不是要把所有的数据都拿出来吧
一般也没人能看到最后一页吧
2008-5-4 10:15 AM#13
查看资料  发短消息  QQ  顶部
 
玉面修罗
注册会员
Rank: 2


UID 78111
精华 1
积分 129
帖子 1578
金钱 119 喜悦币
威望 10
人脉 0
阅读权限 20
注册 2006-8-11
状态 离线
[推荐阅读] 怎么玩村里的股票啊
头几页命中比较高。。所以需要把前几页的数据缓存进一个大数组。。。



PHPthink.com
待业中...
2008-5-4 11:51 AM#14
查看资料  发短消息  顶部
 
只爱一个人 (只爱一个人)
论坛元老
Rank: 8Rank: 8
超级管理员



UID 29639
精华 0
积分 3779
帖子 1616
金钱 3779 喜悦币
威望 0
人脉 0
阅读权限 90
注册 2004-6-26
状态 离线
[推荐阅读] 用PHP写的程序,有办法读取ID卡或是IC卡吗?


QUOTE:
原帖由 玉面修罗 于 2008-5-4 11:51 AM 发表
头几页命中比较高。。所以需要把前几页的数据缓存进一个大数组。。。
在海量数据的情况下缓存是必须的

同样做的时候可以考虑一下用户的习惯问题

像查看论论帖子一样,如果帖子数超过50页,一般人都只会看前几页,和最后几页

相对而言中间的25 26 这样的情况看的人就很少的


现在我这边弄的东西,就是折中的取法

减少了很大的数据库压力




customavatars/296392.jpg
2008-5-4 04:55 PM#15
查看资料  访问主页  Blog  发短消息  顶部
 
tianfing
金牌会员
Rank: 6Rank: 6
天常的小孩


UID 37514
精华 0
积分 1235
帖子 409
金钱 1234 喜悦币
威望 0
人脉 1
阅读权限 70
注册 2004-10-22
状态 离线
[推荐阅读] 偶与教育界mm的精彩对话。【组图,多图杀猫】


QUOTE:
原帖由 levie 于 2008-4-29 09:27 PM 发表
Select * From table Where ID>=(
Select ID From table limit 2000000,1
)limit 100;
试试这个,效率应该会高些。
我直接就用
Select * From table Where ID>= 2000000 limit 100;




希望有一天,能够纯洁的爱上一个人!
QQ:285922205
我来玩 网页游戏
http://www.wlwan.com
2008-5-6 05:05 PM#16
查看资料  发短消息  顶部
 
sosyxg (sosyxg)
新手上路
Rank: 1
初级会员


UID 29933
精华 0
积分 15
帖子 16
金钱 15 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2004-7-8
状态 离线
[推荐阅读] 招聘PHP技术!!
我碰到最多的数据就是100多万
说说我的做法吧

1.仍然使用传统的分页,只不过每页不是普通的几十条,可以改为上百条
2.采用ajax的异步传输,做个loading界面,从而更人性化
3.根据你的查询条件优化索引





QQ: 181679118
2008-5-6 07:18 PM#17
查看资料  发短消息  顶部
 
levie
新手上路
Rank: 1



UID 120800
精华 0
积分 15
帖子 16
金钱 15 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2008-4-29
状态 离线
[推荐阅读] 招聘PHP技术!!


QUOTE:
原帖由 tianfing 于 2008-5-6 05:05 PM 发表

我直接就用
Select * From table Where ID>= 2000000 limit 100;
假如这样能实现楼主所期望的分页sql。
2008-5-7 08:50 AM#18
查看资料  发短消息  顶部
 
漠北怪叟
金牌会员
Rank: 6Rank: 6



UID 70640
精华 0
积分 2358
帖子 378
金钱 2358 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2006-3-29
状态 离线
[推荐阅读] 招聘PHP技术!!


QUOTE:
原帖由 sosyxg 于 2008-5-6 07:18 PM 发表
我碰到最多的数据就是100多万
说说我的做法吧

1.仍然使用传统的分页,只不过每页不是普通的几十条,可以改为上百条
2.采用ajax的异步传输,做个loading界面,从而更人性化
3.根据你的查询条件优化索引


...
同意,

选多点.再用JS分!




我的博客:http://hjc73.space.mywallop.cn,换窝了,http://my.haokan123.com/?104 自己开发的博客自己撑~
2008-5-8 01:11 PM#19
查看资料  Blog  发短消息  顶部
 
coldwind (coldwind)
金牌会员
Rank: 6Rank: 6
高级会员



UID 13817
精华 0
积分 2645
帖子 2668
金钱 2645 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2002-4-17
来自 风之谷
状态 离线
[推荐阅读] 緊急求助! 關於input file的 問題
1,把表中的text/blob字段移到其他表中
2,尝试分表,比如1000W数据,分成10个表,立即就变得容易多了




PHP5框架:
http://code.google.com/p/i-framework
2008-5-8 01:18 PM#20
查看资料  访问主页  Blog  发短消息  QQ  顶部
 26  2/3  <  1  2  3  > 
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.024543 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP