硬件环境:piii550,128m,15.2g
软件环境:win98+apache+php4+mysql
方案一:
1.第一次查询时用select count(1) from tab where condition 取得满足条件的记录数$rows
2.通过前页数$page,每页记录数$rpp取回记录集
select * from tab where condition limit ($page-1)*$rpp,$rpp
3.显示返回记录集的所有记录。
4.页面转移时将$rows传递给以后页面。
方案二:
1.取回满足条件的记录集
select * from tab where condition
2.移动指针到($page-1)*$rpp
3.显示$rpp条记录
==============+======+==============================================+======+======+========
记录数 方案 次数 1 2 3 4 5 6 7 8 9 0 平均 平均 效率比
==============+======+==============================================+======+======+========
第一页 2 , 1 , 1 , 2 , 1 , 1 , 2 , 2 , 1 , 2 1.3
一 +----------------------------------------------+------+ 1.6
10000条记录时 其它页 2 ,2 , 2 , 3 , 1 , 1 , 2 , 2 , 2 , 2 1.9 4.8125
+------+----------------------------------------------+------+------+
二 每一页 7 , 7 , 7 , 8 , 8 , 8 , 8 , 8 , 8 , 8 7.7 7.7
==============+======+==============================================+======+======+========
第一页 25, 2 , 3 , 2 , 21, 16, 9 , 20, 9 , 9 1.6
一 +----------------------------------------------+------+ 7.5
20000条记录时 其它页 6 , 6 , 2 , 2 , 4 , 4 , 4 , 1 , 2 , 2 3.3 6.6533
+------+----------------------------------------------+------+------+
二 每一页 54, 50, 37, 46, 49, 47, 52, 50, 55, 59 49.9 49.9
==============+======+==============================================+======+======+========
第一页 34, 35, 24, 21, 21, 21, 22, 22, 21, 21 25.2
一 +----------------------------------------------+------+ 25.95
30000条记录时 其它页 14, 27, 40, 39, 37, 33, 22, 30, 14, 11 26.7 3.3372
+------+----------------------------------------------+------+------+
二 每一页 92, 90, 83, 78, 93, 83, 91, 79, 89, 88 86.6 86.6
==============+======+==============================================+======+======+========
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器