php對mysql提取數據那種速度更快
問題描述
1、單條數據,即只有一行數據,然后這行數據里面的字段article里面有40萬個單詞,以逗號(,)分割
2、有40萬條數據,即40萬行,每行的字段article中有一個單詞
如果方案1的速度快,要怎么分別循環提取出來,然后進行組合(以逗號分割),循環組合成40萬條,<a href='http://www.wxshucaidpc.com/wenda/分割后的單獨一個單詞'>分割后的單獨一個單詞</a>
問題解答
回答1:我認為應該是方案2的速度快。
先取1000條數據:
SELECT `article` FROM `table` ORDER BY id DESC LIMIT 0,1000
對1000條數據逐個處理:
foreach ($list as $key => $value) {$link = ’<a href='http://www.wxshucaidpc.com/wenda/’.$value[’article’].’'>’.$value[’article’].’</a>’; ....}
再處理下面1000條
回答2:光查詢的話,前者肯定要快,但是一個字段存40W個單詞(一個單詞按7個字母算--含逗號),就是將近300W個字母,大概有3M的數據。但是查詢出來,對這么長的字段進行切割,感覺不太靠譜。
回答3:如果是簡單的在頁面上列出40w個單詞這種業務,我覺得還是第一種方法快
理由:一、查詢方法1.掃描一行就能獲取到記錄,方法2那就需要掃描很多行了,花費的時間就不言而喻了(表越大越明顯)。這個過程方法1比方法2優越太多了二、輸出方法1需要獨立分割,這對php來說根本不叫事。然后都需要緩存輸出。
總的來說,方法1的開銷比方法2的開銷少。
相關文章:
1. android - 分享到微信,如何快速轉換成字節數組2. javascript - 能否讓vue-cli的express修改express重啟服務3. angular.js - Beego 與 AngularJS的模板格式沖突,該怎么解決?4. javascript - nodejs使用mongoose連接數據庫,使用post提交表單在后臺,后臺處理后調用res.redirect()跳轉界面無效?5. node.js - npm一直提示proxy有問題6. javascript - vue2.0中,$refs對象為什么用駝峰的方式獲取不到屬性?7. 解決Android webview設置cookie和cookie丟失的問題8. html5 - 有人做過防微信app界面的H5 demo嗎?9. javascript - 有沒有iOS微信中可以在背景播放視頻的方法?10. 最新版本的微信web開發者工具必須要APPID,會提供測試號,但是像你一樣tabBar配置的話不會顯示首頁與日志,難道我要下載跟你一樣的版本?
