各种数据库获取随机记录的方法,当然这种方法都仅适用于小数量的表,大数量的表需要优化获取随机记录
There are lots of ways to select a random record or row from a database table. Here are some example SQL statements that don't require additional application logic, but each database server requires different SQL syntax.
SELECT column FROM table ORDER BY RAND() LIMIT 1
SELECT column FROM table ORDER BY RANDOM() LIMIT 1
SELECT TOP 1 column FROM table ORDER BY NEWID()
SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY
SELECT column FROM ( SELECT column FROM table ORDER BY dbms_random.value ) WHERE rownum = 1
Thanks Mark Murphy
Feel free to post other example, variations, and SQL statements for other database servers in the comments.
收藏各种数据库获取随机记录的方法到百度搜藏

(142)
(131)
(311)
(236)
(70)
(24)
(6)
(162)
(44)
(24)
(24)
(6)
(2)
(3)
(16)
(11)
(3)