1、單條數據,即只有一行數據,然後這行數據裡面的字段article裡面有40萬個單詞,以逗號(,)分割
2、有40萬條數據,即40萬行,每行的字段article中有一個單字
如果方案1的速度快,要怎麼分別循環提取出來,然後進行組合(以逗號分割),循環組合成40萬條,<a href="分割後的單獨一個單字"> ;分割後的單獨一個字</a>
PHP中文网2017-05-18 10:46:34
我認為應該是方案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條
PHP中文网2017-05-18 10:46:34
光查詢的話,前者一定要快,但是一個字段存40W個單字(一個單字以7個字母算--含逗號),就是將近300W個字母,大概有3M的資料。但是查詢出來,對這麼長的字段進行切割,感覺不太可靠。
淡淡烟草味2017-05-18 10:46:34
如果是簡單的在頁面上列出40w個單字這種業務,我覺得還是第一種方法快
理由:
一、查詢
方法1.掃描一行就能取得到記錄,方法2那就需要掃描很多行了,花費的時間就不言而喻了(表越大越明顯)。
這個過程方法1比方法2優越太多了
二、輸出
方法1需要獨立分割,這對php來說根本不叫事。然後都需要緩存輸出。
總的來說,方法1的開銷比方法2的開銷少。