生成一个随机记录集,有什么好的算法没?
生成一个随机记录集,有什么好的算法没?
------解决方案--------------------云里雾里   
------解决方案--------------------INSERT 表 SELECT  
 	CHAR(65+RAND(CHECKSUM(NEWID()))*25), 
 	DATEADD(Day,1-RAND(CHECKSUM(NEWID()))*500,GETDATE()), 
 	RAND(CHECKSUM(NEWID()))*360 
 FROM sysobjects a,sysobjects b 
------解决方案--------------------字段個數有要求嗎?
------解决方案--------------------最简单的   
 select top 100 newid() as randcol from sysobjects a,syscolumns b
------解决方案--------------------随机取出10条数据 
 select top 10 * from tablename order by newid() 
------解决方案--------------------通常用 RAND 生成随机数的方法是,用相对不定的某个值作为种子值,例如累加 GETDATE 的几个部分:   
 SELECT RAND( (DATEPART(mm, GETDATE()) * 100000 ) 
            + (DATEPART(ss, GETDATE()) * 1000 ) 
            + DATEPART(ms, GETDATE()) )   
------解决方案--------------------select * from (select * from staff(表名) order by dbms_random.random) where rownum  < n(所要记录的个数)   
 这个应该行
------解决方案--------------------如果是想生成几位数,尽量平均分布的话 
 比如4位数 0000~9999,10W条数据 
 那么随意找几个字段连成长字段 
 1位位的相加出结果(10位) A 
 再来10位                B 
                         C 
 ... 
                         N 
 连成字符ABC...N,再%10000 
 需要用其他语言来写 
------解决方案--------------------随机抽10道题   
 select top 10 * from 试题表 order by newid()
------解决方案--------------------随机的问题就两个函数rand()和newid()