您的位置:首页 > 数据库

SQL to Select a random row from a database table

2010-09-21 15:16 375 查看
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 a random row with MySQL:

SELECT column FROM tableORDER BY RAND()LIMIT 1

Select a random row with PostgreSQL:

SELECT column FROM tableORDER BY RANDOM()LIMIT 1

Select a random row with Microsoft SQL Server:

SELECT TOP 1 column FROM tableORDER BY NEWID()

Select a random row with IBM DB2

SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY

Thanks Tim

Select a random record with Oracle:

SELECT column FROM( SELECT column FROM tableORDER 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.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐