藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年8月11日 19:58

在MYSQL 中如何隨機取得N條記錄?

在MYSQL 中如何隨機取得N條記錄?



Re: 在MYSQL 中如何隨機取得N條記錄?

我只想到一個辦法,首先用一個循環,生成隨機數,一次一個。然後在查詢時使用
limit子句。如隨機數為id,則select 語句為:
select * from table where condition limit id,1

試試看吧。

----------------------------
學習 PHP, Python ,歡迎交流 http://phprecord.126.com

Re: 在MYSQL 中如何隨機取得N條記錄?

我覺得這樣會不會資源開銷很大?
有沒有類似的函數?



Re: 在MYSQL 中如何隨機取得N條記錄?

我也不知道有什麼別的辦法,像你這種用法還第一次看到。

----------------------------
學習 PHP, Python ,歡迎交流 http://phprecord.126.com

Re: 在MYSQL 中如何隨機取得N條記錄?

現在我也在為你所說的這個問題而煩惱,你解決了嗎?能告訴小弟嗎?

Re: 在MYSQL 中如何隨機取得N條記錄?

試試:select * from xxx order by rand( ) limit 0,n

Re: 在MYSQL 中如何隨機取得N條記錄?

我用的方法是循環,選擇n個id號,並生成用逗號分隔的字符串,比如是$idString,最後再select * from xxx where id in ($idString),思路是一樣的,但開銷會小一點。

Re: 在MYSQL 中如何隨機取得N條記錄?

xy100的方法真是高,第一次見這樣的語法,想破頭我也想不到!

Re: 在MYSQL 中如何隨機取得N條記錄?

過獎了。

Re: 在MYSQL 中如何隨機取得N條記錄?

有一本書叫'mysql網絡數據庫指南'中就有介紹,rand()



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com