从数据中抽取随机数
哪位朋友做过啊?比如有100条数据记录,从中抽取1到100的条记录,抽取的个数可以自己定,比如我可以一次抽1条,也可以抽5条8条,但都是随机的,有朋友做过吗? --------------------编程问答--------------------用Random类
--------------------编程问答-------------------- Random --------------------编程问答--------------------
--------------------编程问答-------------------- ”抽取的个数可以自己定,比如我可以一次抽1条,也可以抽5条8条“
declare @S nvarchar(2)
declare @St nvarchar(4000)
set @S=CEILING(RAND()*100)
set @St='select top '+ @S + ' * from tablename'
exec sp_executesql @St
你自己定抽取个数怎么还可以抽随机条数,你是不是想说这100条数据每次查询排列都不一样?
SELECT TOP 自定条数 * FROM 表 ORDER BY NEWID()
--------------------编程问答-------------------- 更改:
--------------------编程问答-------------------- 关于楼主的随机问题。
declare @S nvarchar(2)
declare @St nvarchar(4000)
set @S=CEILING(RAND()*100)
set @St='select top '+ @S + ' newid(), * from tablename order by newid()'
exec sp_executesql @St
如果抽5个,后面抽出来的是不是需要考虑是否包含在已经抽出来得队列里边?
如果不需要考虑这个问题,用Random类就可以实现。
如果要考虑这个问题的话,那么在取一次随即后就需要判断是否已经在前面出现过。 --------------------编程问答-------------------- 是的,抽取过了就不考虑了,这个我自己会,没有高明的办法,就用笨办法,跟已抽出来的作比较 --------------------编程问答-------------------- 看不懂楼上"鲲鱼"说的,没见过还有这种方法,是不是只限于SQL数据库才能识别的命令,ACCESS识别不了吧
补充:.NET技术 , VB.NET