Php+MySql分頁機制2種方案的比較測試:
發表時間:2023-08-11 來源:明輝站整理相關軟件相關文章人氣:
[摘要]硬件環境:PIII550,128M,15.2G軟件環境:Win98+Apache+Php4+MySql方案一:1.第一次查詢時用Select count(1) from tab where cond...
硬件環境: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
==============+======+==============================================+======+======+========