Php与MySql分页机制两种方案的比较测试
添加时间:2014-8-7 17:13:53
添加:
思海网络
方案一:
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 |
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 |
==============+======+====================================
关键字:Php、MySql、记录
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解