[PHP-users 26173] PHP で MySQL からデータ取得時の処理速度の違いについて

tomonori classix95 @ yahoo.co.jp
2005年 7月 15日 (金) 02:30:27 JST


はじめまして、tomonoriと申します。

PHPでMySQLからデータ取得時の処理速度の違い
についての質問です。
ご指導のほどお願いいたします。


カラムが23ある3000件程のデータベース。
画面上には10件を表示、10件ごとのページ遷移リンクがある、
WEBアプリケーションです。

この場合、以下の2つの方法では、
どちらが一般的に処理が早く負荷がかからないのでしょうか?

1.SQL1回で取得

 //データ取得
 $rs = mysql_query("select * from table")

 //ページ遷移リンクのために
 $max_item = mysql_num_rows($rs);
 $max_page = $max_item / 10;

 //10件の表示
 for (  ) {
  $item = mysql_fetch_array($rs);

  //最初のアイテムまで飛ばす
  if(  ){ continue;}

  //表示

  //10件終わったら、break
  if( ){ break;}
 }


2.SQL2回で取得

 //データ取得
 $rs = mysql_query("select * from table")

 //ページ遷移リンクのために
 $max_item = mysql_num_rows($rs);
 $max_page = $max_item / 10;


 //データ取得
 $rs = mysql_query("select * from table limit 最初 最後")

 //10件の表示
 foreach (  ) {
  $item = mysql_fetch_array($rs);

  //表示

 }



もっとスマートなロジックがあったり、
これだけでは一概にいえないかもしれませんが、
どうかご教示いただければ幸いです。

__________________________________
Save the earth
http://pr.mail.yahoo.co.jp/ondanka/



PHP-users メーリングリストの案内