php對mysql提取資料那種速度更快
巴扎黑
巴扎黑 2017-05-18 10:44:34
0
3
634

1、單條數據,即只有一行數據,然後這行數據裡面的字段article裡面有40萬個單詞,以逗號(,)分割

2、有40萬條數據,即40萬行,每行的字段article中有一個單字

如果方案1的速度快,要怎麼分別循環提取出來,然後進行組合(以逗號分割),循環組合成40萬條,<a href="分割後的單獨一個單字"> ;分割後的單獨一個字</a>

巴扎黑
巴扎黑

全部回覆(3)
洪涛

我認為應該是方案2的速度快。

先取1000條資料:

SELECT `article` FROM `table` ORDER BY id DESC LIMIT 0,1000

對1000條資料逐一處理:

foreach ($list as $key => $value) {    
    $link = '<a href="'.$value['article'].'">'.$value['article'].'</a>';
     ....
}

再處理下面1000條

洪涛

光查詢的話,前者一定要快,但是一個字段存40W個單字(一個單字以7個字母算--含逗號),就是將近300W個字母,大概有3M的資料。但是查詢出來,對這麼長的字段進行切割,感覺不太可靠。

淡淡烟草味

如果是簡單的在頁面上列出40w個單字這種業務,我覺得還是第一種方法快

理由:
一、查詢
方法1.掃描一行就能取得到記錄,方法2那就需要掃描很多行了,花費的時間就不言而喻了(表越大越明顯)。
這個過程方法1比方法2優越太多了
二、輸出
方法1需要獨立分割,這對php來說根本不叫事。然後都需要緩存輸出。

總的來說,方法1的開銷比方法2的開銷少。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板