分享java带来的快乐

我喜欢java新东西

sql随机函数在各种数据库的使用

sql随机函数在各种数据库的使用(转)

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 table
                                    ORDER BY RAND()
                                    LIMIT 1
                                    

Select a random row with PostgreSQL:

SELECT column FROM table
                                    ORDER BY RANDOM()
                                    LIMIT 1
                                    

Select a random row with Microsoft SQL Server:

SELECT TOP 1 column FROM table
                                    ORDER 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 id FROM
        ( SELECT id from  tbl_lib_question
        ORDER BY dbms_random.value )
        WHERE rownum <20

Thanks Mark Murphy

Feel free to post other example, variations, and SQL statements for other database servers in the comments.

posted on 2009-03-26 22:21 强强 阅读(562) 评论(0)  编辑  收藏 所属分类: Oracle数据库


只有注册用户登录后才能发表评论。


网站导航: