作者superGA (kid...)
看板PHP
標題Re: [請益] 系統MySQL使用量過多
時間Tue May 12 11:55:31 2009
你現在的的寫法,每loop一次就會查一次sql,完全是錯誤示範
把你要的資料一次就查出來,再用loop去處理那些資料
詳細sql怎麼寫就自己去找吧
效能絕對會改善很多
※ 引述《ydasam (阿達)》之銘言:
: 各位版大和版友不好意思
: 個人一直po文 請大家多多包含
: 謝謝各位大大這麼熱心想幫忙我解決問題
: 我們網站有用到很多do while ,這是我的php sql code
: $sql = "SELECT h,v,d,br,ar,win FROM xxx where xxx='".$xxx."'";
: //echo $sql.'<br>';
: $query = $this->query($sql, $link);
===> while($row = mysql_fetch_array($query)){
: $info['x']= $row['x'].' vs '.$row['x'];
: $info['x']= $row['x'];
: $info['x']= $row['x'];
: $info['x']= $row['x'];
: $info['x']= $row['x'];
: $info['x']= $row['x'];
: $string= substr( $row['x'],5, 5);
: $info['x']= str_replace("-","/",$string);
: }
: p.s. 把變數的名稱和資料表名稱都改掉了
: 另外有兩個問題想請教大家
: 1. 請問什麼是MyTop , 要如何使用??
: 2. 上禮拜朋友告訴我要設primary Key , 設定了之後資料庫確實有變快 , 我還有看到
: 資料表可以設 index ,不曉得這個設定是否會變快 ? 設定時要注意什麼嗎?
: 拍謝 po了這麼長..
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.164.131
推 flamerecca :我是路人 請問是要像php.net裡面那樣用嗎 05/12 12:03
→ flamerecca :不過我看來他並沒有每次都quest耶 只是命名不好... 05/12 12:05
→ weiyucsie :看不出每次loop就查一次...+1 05/12 12:10
推 appleboy46 :看不出每次loop就查一次...+1 05/12 13:05
→ chrisQQ :該不會是看錯 while($row = mysql_fetch_array 這行 05/12 13:24
→ kylekai :看不出來+1 .... 05/12 13:34
→ superGA :喔 那我搞錯了XD php不太熟 但是減少IO概念是一樣的 05/12 14:18
→ superGA :把查詢搬到迴圈之外 05/12 14:26
推 w3c :他while裡做的事loading不重,無所謂 ~ 05/12 15:08
→ w3c :LOOP一次 只會LOCK而已~ 並不會再查一次 05/12 15:09
→ w3c :資料都在TEMP準備send罷了 05/12 15:09