Quantcast
Channel: iT邦幫忙
Viewing all articles
Browse latest Browse all 15645

[php mysql]資料庫 換頁概念+效能

$
0
0
各位好:

目前想到的換頁(pagination)方式流程大概如下:
(PHP+MYSQL)

1.第一次query先撈出總筆數,並做好相關分頁計算,也準備將這些值帶入下一次的limit設定中
2.第二次query取出所有資料(limit筆數)

我是有聽過最好減少資料庫query的次數,盡量縮減成一次query就好?
尤其是在千人存取的環境下...

問題一:所以還有更好的query方式嗎?

問題二:我要來轉成PDO方式存取,概念是否雷同?


SUDO程式碼:

$smt="from test where name='john' ";

$query = "SELECT COUNT(*) as num $smt ";  //第一次query
$result = mysql_query($query, $connection);
$query_data = mysql_fetch_row($result);
資料總筆數 = $query_data[0];  //取出SQL條件限制下的總筆數

....進行分頁所需計算:如算出頁數等....
略


//第二次query
$query = "SELECT tname FROM $smt limit 位置,10";

$result = mysql_query($query, $connection);
while($row=mysql_fetch_array($result)){
   //loop
}

Viewing all articles
Browse latest Browse all 15645

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>