我们来自五湖四海,不为别的,只因有共同的爱好,为中国互联网发展出一分力!

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

2014年11月29日03:51 阅读: 21148 次

标签: 四种数据库随机获取10条数据的方法

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


SQL Server:


复制代码
代码如下:


SELECT TOP 10 * FROM T_USER ORDER BY
NEWID()

ORACLE:

复制代码
代码如下:


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

MySQL:

复制代码
代码如下:


SELECT * FROM T_USER  ORDER BY  RAND()
LIMIT 10

Access:

复制代码
代码如下:


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

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



以ASP.NET为例:


复制代码
代码如下:


Random random = new
Random(System.Guid.NewGuid().GetHashCode());
int r = random.Next();
string
sql = "SELECT TOP 10 * FROM T_USER ORDER BY RND(" + (-r) + "*自动编号字段)"
分享到: 更多
©2017 安全焦点 版权所有.
人才招聘联系我们