mysql产生随机数小结

mysql产生随机数小结一下,可以为mysql的表生成大量的随机数: 

1) 产生0到1000间的随机数 
   SELECT RAND() * 10000; 

对应产生相应的整数 
   SELECT FLOOR(RAND() * 10000) 

2) 使用md5()产生32位随机字符串 

SELECT MD5(RAND() * 10000) 

3) 产生500-1000间的整形 
  SELECT FLOOR( 500 + RAND() * (1000 - 500)) 
4) 假设某表如下结构 
CREATE TABLE fact ( 
  dim1 int, 
  dim2 int, 
  name varchar(20), 
  hash varchar(32), 
  measure1 double 
); 

   则可以自动产生适合其结构的大量随机记录 
create table names(id int auto_increment primary key, name varchar(20)); 
insert into names (name) values ('Justin','Jerry','James','Josh','Julien'); 
select (select name from names where id = 1 + rand() * 4); 

  这里有一个表专门产生随机的字符串; 


INSERT INTO fact 
SELECT FLOOR(1+ rand()*9999), 
       FLOOR(1 + rand()*499), 
       (select name from names where id = 1 + rand() * 4), 
       MD5(1+rand()*9999), 
       rand() 
FROM fact;

猜你喜欢

转载自liuguofeng.iteye.com/blog/2142732
今日推荐