
我这只是思路啊,这个要实现的话要使用多线程技术
1首先一个随机数
对比内变量里的随机数,是否有重复,如果重复则此次无效,重新生成
2,根据此随机数抽取数据库中数据。
另一个线程负责清空内存变量的数据
即此线程开着一个计时器,然后根据时间来清除数据
希望对你有所帮助
用random函数取随机数就可以了然后将取得的随机数用SQL语句查询和你数据库中的某条记录ID是否相同是的话就显示,不是就不显示,要想显示多个随机的记录你可以用DO WHILE循环来做!还不明白发消息问我,顺便把你提问的问题也复制给我,太多了我分不清~
首先看一下你的数据量多不多!
不过一般使用Access的数据也不会太多!
你可以这样做,用一个数组,将数据库中的记录不会有重复的列的值储存下来。
然后使用随机函数,从数组中抽区随机一个!
例子:
Dim DBVal()
………………(省略从数据库中读取数据的代码)
这里要强调一点,你数据库中的记录有多少条,你就要重新定义数组的维数上限
可以使用Redim关键字
Redim DBVal(1 To [数据库游标]RecordCount)
然后就可以开始抽选了:
Dim intRecordNum
Randomize '如果你的程序只抽取一条记录,则可以不要这个
intRecordNum = Int((UBound(DBVal) - 1) Rnd) + 1
到这里,已经可以得出想要抽取的记录关键字了,你可以根据DBVal(intRecordNum)作为条件,搜索数据库中与该变量相符合的数据
if _N_=1 then output;
用这样的语句将第一行输出进另外一个数据集。
也可以用如下语句实现将多行输入进另外数据集(这里是第一、第二、第四行的意思)
if _N_ in (1,2,4) then output;
以上就是关于C# 数据库随机抽取数据全部的内容,包括:C# 数据库随机抽取数据、在asp中怎么才能实现随机抽取数据库中的记录、如何从access数据库中用SQL语句随机抽取一条数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)