码迷,mamicode.com
首页 > 数据库 > 详细

四种数据库随机获取数据的方法

时间:2019-10-21 11:33:49      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:code   asp   一个   mys   bms   acl   取数据   rac   编号   

SQL Server:

SELECT TOP n * FROM T_table ORDER BY NEWID();

ORACLE:

SELECT FROM (SELECT FROM T_USER ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= n

MySQL:

SELECT * FROM T_table ORDER BY RAND() LIMIT n

Access:

SELECT TOP n * FROM T_table ORDER BY rnd([一个自动编号字段])

这条语句在 Access 中的“查询”中是可以运行并得到随机结果的,但在 ASP.NET等后台程序代码中却无法得到预期的随机效果。
正确的写法如下:

以ASP.NET为例:

Random random = new Random(System.Guid.NewGuid().GetHashCode());
int r = random.Next();
string sql = "SELECT TOP n * FROM T_table ORDER BY RND(" + (-r) + "*自动编号字段)"

四种数据库随机获取数据的方法

标签:code   asp   一个   mys   bms   acl   取数据   rac   编号   

原文地址:https://blog.51cto.com/11657004/2444073

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!