分享四种数据库随机获取10条数据的方法。
1,sql server数据库:
复制代码 代码示例:
select top 10 * from t_user order by newid()
2,oracle数据库:
复制代码 代码示例:
select * from (select * from t_user order by dbms_random.random()) where ronum <= 10
3,mysql/ target=_blank class=infotextkey>mysql数据库:
复制代码 代码示例:
select * from t_user order by rand() limit 10
4,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) + "*自动编号字段)"