数据库里10000条数据,我想随机取出200个,要怎么做呢?

来源:百度知道 编辑:UC知道 时间:2024/05/23 14:55:02
谢谢大家!
2楼的可行

还想问问,如果想有5条是每次固定取出来的,然后195个是随机的要怎么做呢?谢谢大家!

select top 200 from tbalename order by newid()

mysql:
select * from t where 流水号>rand()*10000-200 order by 流水号 limit 200

sqlserver就
select top 200 * from t where 流水号>rand()*10000-200 order by 流水号

mysql:
(select * from t where id=1 or id=2 or id=3 orid=4 or id=5)union(select * from t where 流水号>rand()*10000-195 order by 流水号 limit 195)

此方法是随机取一个段落上195个数据+固定的,要这195真随机(分散的,在哪都可能)就得用存储过程

这个用SQL文应该是不可能实现的吧,
最后,在外部用程序来实现200个随机数,
再用SQL文抽出来。

写个循环语句,每次随机一个信息存入一个随机数据表内,在设一个计数,计数控制在200以内,每随机一条数据并将随机的数据与随机数据表里之前的数据比对无重复的即+1,计数如果在200以内继续循环。。。、
不好意思 语句我早就忘了,但我这样想的希望可以解决你的问题

select top 200 * from tablename order by newid()

如果只是为了达到目的的话,不需要用随机函数,你可以自己设置条件限制,取到另外的195个记录就行,比如有一列是电话号码,你可以取电话号码第三位是5的记录