mysql产生随机数重点归纳篇
前面讲了很多关于MySQL如何求随机数的方法,包括优化方法,那么现在我们来归纳下,看从中可以得到什么启示。
mysql产生随机数小结一下,可以为mysql的表生成大量的随机数:
1)产生0到1000间的随机数
SELECTRAND()*10000;
对应产生相应的整数
SELECTFLOOR(RAND()*10000)
2)使用md5()产生32位随机字符串
SELECTMD5(RAND()*10000)
3)产生500-1000间的整形
SELECTFLOOR(500+RAND()*(1000-500))
4)假设某表如下结构
CREATETABLEfact(
dim1int,
dim2int,
namevarchar(20),
hashvarchar(32),
measure1double
);
则可以自动产生适合其结构的大量随机记录
createtablenames(idintauto_incrementprimarykey,namevarchar(20));
insertintonames(name)values('Justin','Jerry','James','Josh','Julien');
select(selectnamefromnameswhereid=1+rand()*4);
这里有一个表专门产生随机的字符串;
INSERTINTOfact
SELECTFLOOR(1+rand()*9999),
FLOOR(1+rand()*499),
(selectnamefromnameswhereid=1+rand()*4),
MD5(1+rand()*9999),
rand()
FROMfact;