硬件環境: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