我在mysql數據庫的某些表中有大約300條記錄。我有一個要求,用一個查詢獲取40個隨機記錄。如何編寫查詢? 需要幫助 謝謝。如何從MySQL數據庫中獲取隨機數的行?
0
A
回答
3
對於一張小桌子喜歡你應該用這個就夠了:
SELECT * FROM table ORDER BY RAND() LIMIT 40;
注意,這是不適合,因爲MySQL的大表將不得不做一個表掃描和秩序的所有表格中的行因使用ORDER BY RAND()
。對於大型表格,你將不得不在應用程序代碼中實現這一點,跟蹤你已經擁有哪些行並生成隨機ID來獲取。
2
你應該使用rand()
與order by
這樣的:
SELECT field1, field2
FROM tableName
ORDER BY RAND()
LIMIT 40
0
請注意,這不是一個快速的解決方案,但它只是300條記錄
工作正常SELECT [rows]
FROM [table]
ORDER BY RAND()
LIMIT 40
-2
SELECT * FROM表ORDER BY蘭德()限制40
1
order by rand()
可能會導致性能問題,而不是嘗試按以下方式:
// what NOT to do:
$r = mysql_query("SELECT username FROM user ORDER BY RAND() LIMIT 1");
// much better:
$r = mysql_query("SELECT count(*) FROM user");
$d = mysql_fetch_row($r);
$rand = mt_rand(0,$d[0] - 1);
$r = mysql_query("SELECT username FROM user LIMIT $rand, 1");
0
你應該用戶RAND()
的WHERE
子句中
,但你首先要在表中的行片段40 /數
例如:
SELECT * FROM [TABLE_NAME] WHERE RAND()< 0.0005;
相關問題
- 1. 如何從iphone sdk中隨機獲取數據庫中的值?
- 2. 如何從oracle數據庫中隨機獲取記錄?
- 3. 如何從數據庫中獲取隨機記錄
- 4. 如何從SQLite數據庫中獲取隨機記錄?
- 5. 從數據庫中獲取隨機數據
- 6. 獲取從數據庫中隨機數據,而不
- 7. PHP代碼從鏈接數據庫中獲取隨機數據
- 8. 如何隨機從數組中獲取
- 9. 如何從Firebase數據庫獲取隨機對象?
- 10. 如何從Firebase數據庫每次獲取隨機UId?
- 11. 隨機圖片從數據庫MYSQL
- 12. 如何從沒有數字標識的MySQL數據庫表中獲取隨機行?
- 13. 如何從Xamp獲取MYSQL數據庫
- 14. nhibernate從數據庫中隨機數據
- 15. 從數據庫表中獲取隨機記錄與mysql中的多個檢查?
- 16. 如何從JMeter中的CSV文件中獲取隨機數據
- 17. 如何從MySQL數據庫中選擇一條隨機記錄?
- 18. 獲取從MySQL數據庫
- 19. 如何從我的數據庫中獲得一個隨機rowId?
- 20. 從MySQL數據庫中獲取數組
- 21. 無法從MySQL數據庫獲取行
- 22. 的LINQ to SQL從數據庫中獲取隨機排
- 23. PHP從數據庫中獲取唯一的隨機值
- 24. 核心數據:從獲取的結果中獲取一行隨機數
- 25. 如何使用javascript從mysql數據庫中獲取數據?
- 26. 如何從mysql數據庫中獲取特定數據vb.net
- 27. 如何從MySQL數據庫中獲取數據到ckeditor?
- 28. 如何從數據庫中隨機抽取問題?
- 29. 使用python從數據庫中隨機獲取字符串
- 30. 從Firebase數據庫中獲取隨機值
http://stackoverflow.com/search?q = rand + mysql試試看這些話題。你的答案在那裏 – Tim 2010-10-23 12:01:02