直接用select * from student order by rand() limit 5不是一個很好的習慣,這個要考慮到數(shù)據(jù)庫的大小問題,比如,數(shù)據(jù)量為10W以上,這樣查詢的效率是非常低的,資源也消耗挺多!你可以考慮在php與mysql結合來實現(xiàn),比如:先用mysql 的count()計算出student的總條數(shù)$sum_num,賦值到php中的變量中,后在php中更具這個總條數(shù)進行生成隨機數(shù)(這里涉及到你的5條數(shù)據(jù)是否為連續(xù)的5條隨機數(shù),還是打亂的隨機五條),這里如果生成連續(xù)的數(shù)據(jù)就只需要生成一個小于$sum_num-5的隨機數(shù)就可以了!根據(jù)這個隨機數(shù)進行l(wèi)imit取出5條就可以;如果這里需要生成打亂的隨機數(shù),就需要生成5個不相同的并且小于$sum_num隨機數(shù),最后根據(jù)這些隨機數(shù)在數(shù)據(jù)庫中查詢,第一種情況用到limit 隨機數(shù),5;;第二種情況用到in(隨機數(shù)1,隨機數(shù)2,隨機數(shù)3,隨機數(shù)4,隨機數(shù)5);在數(shù)據(jù)量大的情況下,這樣的效率和資源消耗的情況下都要比select * from student order by rand() limit 5好得多,當然如果數(shù)據(jù)量不多的話就用這個也可以!只是給你普及個知識!祝你學習愉快!(這里暫且認為你會用php生成隨機數(shù)并且這里的php生成的隨機數(shù)必須為大于0的整型哦,不會的話可以先百度、google,最后可以繼續(xù)給我留言)!
創(chuàng)新互聯(lián)長期為上1000+客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為嘉善企業(yè)提供專業(yè)的網站建設、成都網站建設,嘉善網站改版等技術服務。擁有十多年豐富建站經驗和眾多成功案例,為您定制開發(fā)。
這里因為你的id會有缺失所以有的方法不適用!就不一一列舉了!
直接用sql隨機查詢 獲取數(shù)據(jù) 就可以了 SELECT * FROM tablename ORDER BY RAND() LIMIT 10
1)隨機取出5條記錄用sql語句就行了;
mysql如下:"select
*
from
youtable
order
by
rand()
limit
5";
2)同樣隨機取5-10條:
$num=rand(5,10);
$sql="select
*
from
youtable
order
by
rand()
limit
$num";
ps:為什么不是php分類問題?
?php
include("conn.php");
$sql="select * from `table` limit 0,4 ";
$query=mysql_query($sql);
while($result=mysql_fetch_array($query)){
var_dump($result)br;
}
?
瀏覽器頁面上就是就會輸出你從數(shù)據(jù)庫中選出的4條數(shù)據(jù),如果你想單獨一條條的用這些數(shù)據(jù),可以這么做:(假如選出4個字段為id、name、pw、age)
?php
include("conn.php");
$sql="select * from `table`";
$query=mysql_query($sql);
$result=mysql_fetch_array($query);
?
這是id:?echo $result['id']?br
這是name:?echo $result['name']?br
這是pw:?echo $result['pw']?br
這是age:?echo $result['age']?
網站標題:php隨機取4條數(shù)據(jù)庫 php獲取隨機數(shù)
URL分享:http://jinyejixie.com/article48/doohehp.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、商城網站、響應式網站、定制開發(fā)、企業(yè)建站、網站導航
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)