我使用select命令從sql表中選擇值。它從表中返回10個值。但我想隨機顯示3個值。通過SQL顯示有限的隨機行
1
A
回答
1
select * from your_table
order by rand()
limit 3
+0
'如果你有一個大表,rand()的順序會很慢。 – Spudley 2012-08-15 17:55:05
0
不上大表是一個好主意:
select * from mytable order by rand() limit 3
0
簡單地說,你可以像這樣的小表:
SELECT * FROM yourTable
ORDER BY RAND()
LIMIT 3;
但是,如果你有大的表,那麼你就可以選擇使用結果集的fragmentation
....假設你的表包含200K行,並且你只需要隨機選擇100行,那麼你就可以計算結果集的片段.....給定表結果集的片斷將會l條0.0005後來可以這樣使用:
SELECT * FROM yourTable WHERE RAND()<=0.0005
要得到完全100行,你可以增加片段一點點,可以使用這樣的:
SELECT * FROM yourTable WHERE RAND()<=0.0006 LIMIT 100;
0
試試這個:
SELECT *
FROM tableName
ORDER BY RAND()
LIMIT 3
但要注意,使用ORDER BY RAND(),according to this article,ORDER BY RAND()
已經落後於表格中只有100行的優化查詢。
This article顯示了在性能基礎上生成隨機記錄的不同技術。
相關問題
- 1. 通過隨機顯示的Mysql行
- 2. 如何通過流行而不是隨機顯示標籤?
- 3. 通過SQL顯示MySQL主機命令
- 4. Android Sqlite顯示隨機行
- 5. 無限循環顯示隨機數js
- 6. 顯示通過SQL
- 7. 通過Oracle對隨機行進行的SQL查詢
- 8. JTabbedPane隨機顯示
- 9. 隨機麻煩顯示隨機鏈接
- 10. 隨機顯示隨機圖像jquery
- 11. 簡單的顯示隨機顯示
- 12. SAS/SQL隨機選擇隨機行
- 13. 通過php顯示隨機產品,不包括一個類別
- 14. 通過按下按鈕隨機顯示按鈕
- 15. 通過Woocommerce在主頁上隨機顯示產品
- 16. 顯示隨機div的框
- 17. 通過隨機選取表執行SELECT sql
- 18. 通過EF得到一個隨機行
- 19. 我需要隨機顯示所有div
- 20. 顯示隨機列表項,通過重新加載只有一個div
- 21. WordPress的顯示,並沒有顯示出隨機早期後
- 22. 集團通過不顯示所有行
- 23. 迭代通過fb:隨機
- 24. 隨機通過在Python
- 25. 隨機p標籤顯示
- 26. 顯示帖子隨機
- 27. 隨機圖像顯示
- 28. Listview顯示隨機圖片
- 29. Magento:顯示隨機子類
- 30. Fancybox隨機顯示圖像
大家都在推薦'rand by()'命令。如果你有一張小桌子,這很好,但如果你有很多數據,速度會很慢。如果它對你來說太慢,請參閱我的答案這裏的替代品:http://stackoverflow.com/questions/10677767/fastest-random-selection-where-column-x-is-y-ullull62677869#10677869 – Spudley 2012-08-15 17:58:15