从数据库随机获取数据库数据库数据
1. sql 随机抽取几条数据的方法 推荐
四种数据库随机获取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) + "*自动编号字段)"
2. 我想随机取出数据库中的5条数据
你可以先用select * from user取出全部的数据
然后取得rs的最大记录数(rs.recordcount),然后再随机取出1到最大记录数之间的随机5个数(这步应该很简单,不用解释如何做了吧呵呵),然后使用rs.move(你随机的5个数字之一)就可以分别取出5条记录来.这个办法的好处是你的主键id不需要是连续的,而绝大多数表都不是连续的呵呵.所以使用Sql语句的where id=随机数字的方法不是很安全
3. 怎么从mysql表中随机取数据
从mysql数据库表中随机获取数据
其实,从数据库随机获取数据,很简单,只须用到一个rand()函数;
select * from table_name order by rand() limit 0,5;
下面是一个小实例:
从文章表中随机获取5条数据。
$dblink=mysql_connect("localhost","root","123456");
mysql_query("set names utf8");
mysql_select_db("aixuexi");
$sql="select * from waxx_article order by rand() limit 0,5";
$rs=mysql_query($sql);
while($row=mysql_fetch_array($rs)){
$rows[]=$row;
}
if($rows){
foreach($rows as $v){
?>
<div style="width:350px;height:35px;line-height:35px;border:1px solid #ccc;"><?php echo $v['title']; ?></div>
<?php
}
}else{
echo "暂无文章";
}
4. C# 随机从数据库抽取数据。
1:
数据库查随即抽取10条QuestionId
放到数组arrayQuestion中
arrayQuestion[0-9]="select
top
10
QuestionId
,NewID()
as
random
from
Question
order
by
random"
2:页面加载时显示第一条(定义变量int
n=0;)
第一条数据="select
QuestionTopic
from
Question
where
QuestionId=arrayQuestion[n]"
3:button_onclick事件,点击显示下一条数据
n++;
下一条数据="select
QuestionTopic
from
Question
where
QuestionId=arrayQuestion[n]"
我想我讲的已经够详细了。。。。~~
5. 如何从mysql数据库的一张表中按不同的比例随机取数据
随机排序,然后取前十条即可。
order by rand()
但需要注意的是效率并不高,在负载较重的环境下可能乱猜正会造成问题。
祝好运,望哗悔采兆耐纳。
6. 如何从mysql数据库中随机获取任意条数据
随机读取可用newid(),取一条可用top 1
举例:如在表test中随机抽取一条未被读取的数据,执行语句为:
select?top?1?*?from?test?order?by?newid()第一次执行结果:
第二次执行结果:
结论:两次执行结果有可能一样,也有可能不一样,也就是实现了随机的效果。