《PHP教程:PHP實現(xiàn)在數(shù)據(jù)庫百萬條數(shù)據(jù)中隨機獲取20條記錄的方法》要點:
本文介紹了PHP教程:PHP實現(xiàn)在數(shù)據(jù)庫百萬條數(shù)據(jù)中隨機獲取20條記錄的方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
本文實例講述了PHP實現(xiàn)在數(shù)據(jù)庫百萬條數(shù)據(jù)中隨機獲取20條記錄的方法.分享給大家供大家參考,具體如下:PHP教程
額,為什么要寫這個?PHP教程
在去某個公司面試時,讓寫個算法出來,當時就蒙了,我開發(fā)過程中用到算法的嗎?又不是大數(shù)據(jù)開發(fā),分析.PHP教程
今天偶然想起來一個坑爹數(shù)據(jù),如:PHP取百萬條數(shù)據(jù)中隨機20條記錄,當時就用的算法.PHP教程
1.先統(tǒng)計統(tǒng)計數(shù)據(jù)庫多少條記錄(這個做個數(shù)據(jù)緩存,如1小時重新統(tǒng)計一次),PHP教程
2.根據(jù)總條數(shù),隨機1次,1次性取出20條記錄(當然這個就相當于分頁了,要求不高的話,這個最快,我用的就是這個);PHP教程
還有一種方法,隨機20次,重復執(zhí)行20次.PHP教程
例如:PHP教程
$sum=800000;//得到總條數(shù) //循環(huán)取數(shù)據(jù) for($i=1;$i<=20;$i++){ $offset=mt_rand(1,$sum); //控制重復對比的,請自行實現(xiàn) //數(shù)據(jù)庫取數(shù)據(jù)的,請自行實現(xiàn) $sql="select * from table limit $offset,1"; echo $sql; }
當然還有其他隨機方法,如:/article/18299.htmPHP教程
PS:這里再為大家提供一款功能類似的在線工具供大家參考:PHP教程
在線隨機數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
PHP教程
高強度密碼生成器:
http://tools.jb51.net/password/CreateStrongPasswordPHP教程
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php字符串(string)用法總結》、《PHP數(shù)據(jù)結構與算法教程》、《php程序設計算法總結》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數(shù)學運算技巧總結》、《PHP數(shù)組(Array)操作技巧大全》及《php常見數(shù)據(jù)庫操作技巧匯總》PHP教程
希望本文所述對大家PHP程序設計有所幫助.PHP教程
轉載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/941.html